我在网上找到一段js转换中文为拼音的代码,但是有一个小疑问,能否将这个代码将中文姓名拼音化呢?
也就是说,代码实现的结果,比如输入中国,结果是zhongguo,如果我想用于人名,如输入张三,能否中间自动加空格呢?结果类似:输入张三:zhang san,输入王老五:wang laowu?代码如下:
<script language="javascript" >function hash(_key,_value){this.key = _key;this.value = _value;}function dictionary(){this.items = [];this.add = function(_key,_value){   this.items[this.items.length] = new hash(_key,_value);}}var d = new dictionary();d.add("a",-20319);d.add("ai",-20317);d.add("an",-20304);d.add("ang",-20295);d.add("ao",-20292);d.add("ba",-20283);d.add("bai",-20265);d.add("ban",-20257);d.add("bang",-20242);d.add("bao",-20230);d.add("bei",-20051);d.add("ben",-20036);d.add("beng",-20032);d.add("bi",-20026);d.add("bian",-20002);d.add("biao",-19990);d.add("bie",-19986);d.add("bin",-19982);d.add("bing",-19976);d.add("bo",-19805);d.add("bu",-19784);d.add("ca",-19775);d.add("cai",-19774);d.add("can",-19763);d.add("cang",-19756);d.add("cao",-19751);d.add("ce",-19746);d.add("ceng",-19741);d.add("cha",-19739);d.add("chai",-19728);d.add("chan",-19725);d.add("chang",-19715);d.add("chao",-19540);d.add("che",-19531);d.add("chen",-19525);d.add("cheng",-19515);d.add("chi",-19500);d.add("chong",-19484);d.add("chou",-19479);d.add("chu",-19467);d.add("chuai",-19289);d.add("chuan",-19288);d.add("chuang",-19281);d.add("chui",-19275);d.add("chun",-19270);d.add("chuo",-19263);d.add("ci",-19261);d.add("cong",-19249);d.add("cou",-19243);d.add("cu",-19242);d.add("cuan",-19238);d.add("cui",-19235);d.add("cun",-19227);d.add("cuo",-19224);d.add("da",-19218);d.add("dai",-19212);d.add("dan",-19038);d.add("dang",-19023);d.add("dao",-19018);d.add("de",-19006);d.add("deng",-19003);d.add("di",-18996);d.add("dian",-18977);d.add("diao",-18961);d.add("die",-18952);d.add("ding",-18783);d.add("diu",-18774);d.add("dong",-18773);d.add("dou",-18763);d.add("du",-18756);d.add("duan",-18741);d.add("dui",-18735);d.add("dun",-18731);d.add("duo",-18722);d.add("e",-18710);d.add("en",-18697);d.add("er",-18696);d.add("fa",-18526);

解决方案 »

  1.   

    接上面:==
    d.add("fan",-18518);d.add("fang",-18501);d.add("fei",-18490);d.add("fen",-18478);d.add("feng",-18463);d.add("fo",-18448);d.add("fou",-18447);d.add("fu",-18446);d.add("ga",-18239);d.add("gai",-18237);d.add("gan",-18231);d.add("gang",-18220);d.add("gao",-18211);d.add("ge",-18201);d.add("gei",-18184);d.add("gen",-18183);d.add("geng",-18181);d.add("gong",-18012);d.add("gou",-17997);d.add("gu",-17988);d.add("gua",-17970);d.add("guai",-17964);d.add("guan",-17961);d.add("guang",-17950);d.add("gui",-17947);d.add("gun",-17931);d.add("guo",-17928);d.add("ha",-17922);d.add("hai",-17759);d.add("han",-17752);d.add("hang",-17733);d.add("hao",-17730);d.add("he",-17721);d.add("hei",-17703);d.add("hen",-17701);d.add("heng",-17697);d.add("hong",-17692);d.add("hou",-17683);d.add("hu",-17676);d.add("hua",-17496);d.add("huai",-17487);d.add("huan",-17482);d.add("huang",-17468);d.add("hui",-17454);d.add("hun",-17433);d.add("huo",-17427);d.add("ji",-17417);d.add("jia",-17202);d.add("jian",-17185);d.add("jiang",-16983);d.add("jiao",-16970);d.add("jie",-16942);d.add("jin",-16915);d.add("jing",-16733);d.add("jiong",-16708);d.add("jiu",-16706);d.add("ju",-16689);d.add("juan",-16664);d.add("jue",-16657);d.add("jun",-16647);d.add("ka",-16474);d.add("kai",-16470);d.add("kan",-16465);d.add("kang",-16459);d.add("kao",-16452);d.add("ke",-16448);d.add("ken",-16433);d.add("keng",-16429);d.add("kong",-16427);d.add("kou",-16423);d.add("ku",-16419);d.add("kua",-16412);d.add("kuai",-16407);d.add("kuan",-16403);d.add("kuang",-16401);d.add("kui",-16393);d.add("kun",-16220);d.add("kuo",-16216);d.add("la",-16212);d.add("lai",-16205);d.add("lan",-16202);d.add("lang",-16187);d.add("lao",-16180);d.add("le",-16171);d.add("lei",-16169);d.add("leng",-16158);d.add("li",-16155);d.add("lia",-15959);d.add("lian",-15958);d.add("liang",-15944);d.add("liao",-15933);d.add("lie",-15920);d.add("lin",-15915);d.add("ling",-15903);d.add("liu",-15889);d.add("long",-15878);d.add("lou",-15707);d.add("lu",-15701);d.add("lv",-15681);d.add("luan",-15667);d.add("lue",-15661);d.add("lun",-15659);d.add("luo",-15652);d.add("ma",-15640);d.add("mai",-15631);d.add("man",-15625);d.add("mang",-15454);d.add("mao",-15448);d.add("me",-15436);d.add("mei",-15435);d.add("men",-15419);d.add("meng",-15416);d.add("mi",-15408);d.add("mian",-15394);d.add("miao",-15385);d.add("mie",-15377);d.add("min",-15375);d.add("ming",-15369);d.add("miu",-15363);d.add("mo",-15362);d.add("mou",-15183);d.add("mu",-15180);d.add("na",-15165);d.add("nai",-15158);d.add("nan",-15153);d.add("nang",-15150);d.add("nao",-15149);d.add("ne",-15144);d.add("nei",-15143);d.add("nen",-15141);d.add("neng",-15140);d.add("ni",-15139);d.add("nian",-15128);d.add("niang",-15121);d.add("niao",-15119);d.add("nie",-15117);d.add("nin",-15110);d.add("ning",-15109);d.add("niu",-14941);d.add("nong",-14937);d.add("nu",-14933);d.add("nv",-14930);d.add("nuan",-14929);d.add("nue",-14928);d.add("nuo",-14926);d.add("o",-14922);d.add("ou",-14921);d.add("pa",-14914);d.add("pai",-14908);d.add("pan",-14902);d.add("pang",-14894);d.add("pao",-14889);d.add("pei",-14882);d.add("pen",-14873);d.add("peng",-14871);d.add("pi",-14857);d.add("pian",-14678);d.add("piao",-14674);d.add("pie",-14670);d.add("pin",-14668);d.add("ping",-14663);d.add("po",-14654);d.add("pu",-14645);d.add("qi",-14630);d.add("qia",-14594);d.add("qian",-14429);d.add("qiang",-14407);d.add("qiao",-14399);d.add("qie",-14384);d.add("qin",-14379);d.add("qing",-14368);d.add("qiong",-14355);d.add("qiu",-14353);d.add("qu",-14345);d.add("quan",-14170);d.add("que",-14159);d.add("qun",-14151);d.add("ran",-14149);d.add("rang",-14145);d.add("rao",-14140);d.add("re",-14137);d.add("ren",-14135);d.add("reng",-14125);d.add("ri",-14123);d.add("rong",-14122);d.add("rou",-14112);d.add("ru",-14109);d.add("ruan",-14099);d.add("rui",-14097);d.add("run",-14094);d.add("ruo",-14092);d.add("sa",-14090);d.add("sai",-14087);d.add("san",-14083);d.add("sang",-13917);d.add("sao",-13914);d.add("se",-13910);d.add("sen",-13907);d.add("seng",-13906);d.add("sha",-13905);d.add("shai",-13896);d.add("shan",-13894);d.add("shang",-13878);d.add("shao",-13870);d.add("she",-13859);d.add("shen",-13847);d.add("sheng",-13831);d.add("shi",-13658);d.add("shou",-13611);d.add("shu",-13601);d.add("shua",-13406);d.add("shuai",-13404);d.add("shuan",-13400);d.add("shuang",-13398);d.add("shui",-13395);d.add("shun",-13391);d.add("shuo",-13387);d.add("si",-13383);d.add("song",-13367);d.add("sou",-13359);d.add("su",-13356);d.add("suan",-13343);d.add("sui",-13340);d.add("sun",-13329);d.add("suo",-13326);d.add("ta",-13318);d.add("tai",-13147);d.add("tan",-13138);d.add("tang",-13120);d.add("tao",-13107);d.add("te",-13096);d.add("teng",-13095);d.add("ti",-13091);d.add("tian",-13076);d.add("tiao",-13068);d.add("tie",-13063);d.add("ting",-13060);d.add("tong",-12888);d.add("tou",-12875);d.add("tu",-12871);d.add("tuan",-12860);d.add("tui",-12858);d.add("tun",-12852);d.add("tuo",-12849);d.add("wa",-12838);d.add("wai",-12831);d.add("wan",-12829);d.add("wang",-12812);d.add("wei",-12802);d.add("wen",-12607);d.add("weng",-12597);d.add("wo",-12594);d.add("wu",-12585);d.add("xi",-12556);d.add("xia",-12359);d.add("xian",-12346);d.add("xiang",-12320);d.add("xiao",-12300);d.add("xie",-12120);d.add("xin",-12099);d.add("xing",-12089);d.add("xiong",-12074);d.add("xiu",-12067);d.add("xu",-12058);d.add("xuan",-12039);d.add("xue",-11867);d.add("xun",-11861);d.add("ya",-11847);d.add("yan",-11831);d.add("yang",-11798);d.add("yao",-11781);d.add("ye",-11604);d.add("yi",-11589);d.add("yin",-11536);d.add("ying",-11358);d.add("yo",-11340);d.add("yong",-11339);d.add("you",-11324);d.add("yu",-11303);d.add("yuan",-11097);d.add("yue",-11077);d.add("yun",-11067);d.add("za",-11055);d.add("zai",-11052);d.add("zan",-11045);d.add("zang",-11041);d.add("zao",-11038);d.add("ze",-11024);d.add("zei",-11020);d.add("zen",-11019);d.add("zeng",-11018);d.add("zha",-11014);d.add("zhai",-10838);d.add("zhan",-10832);d.add("zhang",-10815);d.add("zhao",-10800);d.add("zhe",-10790);d.add("zhen",-10780);d.add("zheng",-10764);d.add("zhi",-10587);d.add("zhong",-10544);d.add("zhou",-10533);d.add("zhu",-10519);d.add("zhua",-10331);d.add("zhuai",-10329);d.add("zhuan",-10328);d.add("zhuang",-10322);d.add("zhui",-10315);d.add("zhun",-10309);d.add("zhuo",-10307);d.add("zi",-10296);d.add("zong",-10281);d.add("zou",-10274);d.add("zu",-10270);d.add("zuan",-10262);d.add("zui",-10260);d.add("zun",-10256);d.add("zuo",-10254);//////////////////////////////////////function getKey(code){if ((code>0)&&(code<160))   return String.fromCharCode(code);else if ((code<-20319)||(code>-10247))   return "";elsefor (var i=d.items.length-1;i>=0;i--){   if (d.items[i].value<=code)   break;}return d.items[i].key;}function myConvert(str){var result = "" ;for (var i=1;i<=str.length;i++)         {                 execScript("ascCode=asc(mid(\"" + str + "\"," + i + ",1))", "vbscript");   result = result   + getKey(ascCode);         }   document.getElementById("ClassEName").value = result; return result ;}</script><from action="" method="post"><input name="ClassName" id="ClassName" type="text" value="cc" onpropertychange="myConvert(this.value)"><input name="ClassEName" id= "ClassEName" type="text" value="dd" ></from>
      

  2.   

    嘿嘿这个有意思,我来帮你修改,很简单,见红色部分function myConvert(str){
    var result = "" ;
    for (var i=1;i <=str.length;i++){
        execScript("asciiCode=asc(mid(\"" + str + "\"," + i + ",1))", "vbscript");
       result = result  + getKey(asciiCode)+" ";
        }
    document.getElementById("ClassEName").value = result;
    return result ;
    }
      

  3.   

    显示不出来重来。function myConvert(str){
    var result = "" ;
    for (var i=1;i <=str.length;i++){
        execScript("asciiCode=asc(mid(\"" + str + "\"," + i + ",1))", "vbscript");
          result = result  + getKey(asciiCode)+" ";
        }
    document.getElementById("ClassEName").value = result;
    return result ;
    }其他部分保持不变,
      

  4.   

    就这么简单啊?呵呵我刚才用asp在接收表单的页面进行处理了,看来还是js简单点谢谢!!