日期:2014-05-16  浏览次数:20384 次

JavaScript获取汉字拼音首字母(不支持多音字和火狐)
<script>
function getFirstPyLetter(){
var a=document.all.form1.str1.value;
var b="";
for (var i=0;i<a.length;i++){
execScript("tmp=asc(\""+a.substr(i,1)+"\")", "vbscript"); // 不支持 ff
tmp = 65536 + tmp;
var py = "";
if(tmp>=45217 && tmp<=45252) {
py = "A"
} else if(tmp>=45253 && tmp<=45760) {
py = "B"
} else if(tmp>=45761 && tmp<=46317) {
py = "C"
} else if(tmp>=46318 && tmp<=46825) {
py = "D"
} else if(tmp>=46826 && tmp<=47009) {
py = "E"
} else if(tmp>=47010 && tmp<=47296) {
py = "F"
} else if((tmp>=47297 && tmp<=47613) || (tmp == 63193)) {
// 鲑 = 63193
py = "G"
} else if(tmp>=47614 && tmp<=48118) {
py = "H"
} else if(tmp>=48119 && tmp<=49061) {
py = "J"
} else if(tmp>=49062 && tmp<=49323) {
py = "K"
} else if(tmp>=49324 && tmp<=49895) {
py = "L"
} else if(tmp>=49896 && tmp<=50370) {
py = "M"
} else if(tmp>=50371 && tmp<=50613) {
py = "N"
} else if(tmp>=50614 && tmp<=50621) {
py = "O"
} else if(tmp>=50622 && tmp<=50905) {
py = "P"
} else if(tmp>=50906 && tmp<=51386) {
py = "Q"
} else if(tmp>=51387 && tmp<=51445) {
py = "R"
} else if(tmp>=51446 && tmp<=52217) {
py = "S"
} else if(tmp>=52218 && tmp<=52697) {
py = "T"
} else if(tmp>=52698 && tmp<=52979) {
py = "W"
} else if(tmp>=52980 && tmp<=53688) {
py = "X"
} else if(tmp>=53689 && tmp<=54480) {
py = "Y"
} else if(tmp>=54481 && tmp<=62289) {
py = "Z"
} else {
py =a.substr(i,1).charAt(0);
}
b=b+py;
}
document.all.form1.str2.value=b;
}
</script>
<form name="form1">
<input type="text" name="str1" onchange="getFirstPyLetter();" />
<input type="text" name="str2" />
</form>