html Code:html
<input type="text" name="myname" /> <input type="button" id="cn_change" value="转中文姓和名" /> <input type="button" id="en_change" value="转拼音姓和名" /> <input type="button" id="en_change_no_space" value="转拼音姓和名无空格" /> <br/> 姓:<input type="text" name="last_name" /> 名:<input type="text" name="first_name" />
Js Code(注:若使用中文转拼音需引入jQuery.Hz2Py-min.js插件,网上可下载):数组
拆分姓和名函数函数
//获取姓和名 function Get_LastName_And_FirstName(full_name){ var hyphenated = ['欧阳','太史','端木','上官','司马','东方','独孤','南宫','万俟','闻人','夏侯','诸葛','尉迟','公羊','赫连','澹台','皇甫', '宗政','濮阳','公冶','太叔','申屠','公孙','慕容','仲孙','钟离','长孙','宇文','城池','司徒','鲜于','司空','汝嫣','闾丘','子车','亓官', '司寇','巫马','公西','颛孙','壤驷','公良','漆雕','乐正','宰父','谷梁','拓跋','夹谷','轩辕','令狐','段干','百里','呼延','东郭','南门', '羊舌','微生','公户','公玉','公仪','梁丘','公仲','公上','公门','公山','公坚','左丘','公伯','西门','公祖','第五','公乘','贯丘','公皙', '南荣','东里','东宫','仲长','子书','子桑','即墨','达奚','褚师']; var last_name = ""; var first_name = ""; //先判断是否全为英文字母 - 若全为英文字母,姓为2个字母。若中英参和或全为中文 - 验证是否存在两名姓, 存在则姓2个字。 if (full_name.search(/[A-Za-z]/) != -1) { //中文姓名全为英文 last_name = full_name.substr(0,2); first_name = full_name.substr(2); } else { //验证是否存在 hyphenated数组中 if(full_name.length > 2 ){ var preTwoWords = full_name.substr(0,2); if($.inArray(preTwoWords, hyphenated) > -1){ last_name = preTwoWords; first_name = full_name.substr(2); }else{ last_name = full_name.substr(0,1); first_name = full_name.substr(1); } }else{ last_name = full_name.substr(0,1); first_name = full_name.substr(1); } } return { 'last_name':last_name, 'first_name':first_name }; }
转姓和名spa
$("#cn_change").on('click',function(){ var myname = $("input[name='myname']").val(); var name_arr = Get_LastName_And_FirstName(myname); var lastName = name_arr['last_name']; var firstName = name_arr['first_name']; $("input[name='last_name']").val(lastName); //欧阳 $("input[name='first_name']").val(firstName); //娜娜 });
转拼音姓和名插件
$("#en_change").on('click',function(){ var myname = $("input[name='myname']").val(); var name_arr = Get_LastName_And_FirstName(myname); var lastName = name_arr['last_name']; var firstName = name_arr['first_name']; $("input[name='last_name']").val(lastName); //欧阳 $("input[name='first_name']").val(firstName); //娜娜 $("input[name='last_name']").val($("input[name='last_name']").toPinyin().toLocaleUpperCase()); //OU YANG $("input[name='first_name']").val($("input[name='first_name']").toPinyin().toLocaleUpperCase()); //NA NA });
转拼音姓和名无空格分隔code
$("#en_change_no_space").on('click',function(){ var myname = $("input[name='myname']").val(); var name_arr = Get_LastName_And_FirstName(myname); var lastName = name_arr['last_name']; var firstName = name_arr['first_name']; $("input[name='last_name']").val(lastName); //欧阳 $("input[name='first_name']").val(firstName); //娜娜 $("input[name='last_name']").val($("input[name='last_name']").toPinyin().toLocaleUpperCase().replace(/ /gm,'')); //OUYANG $("input[name='first_name']").val($("input[name='first_name']").toPinyin().toLocaleUpperCase().replace(/ /gm,'')); //NANA });