姓名拆分姓和名

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 

});
相关文章
相关标签/搜索