下拉列表快速选择<br>// 获取拼음을首字母<br>function getPinYin(c ) {<br> execScript("tmp=asc("" c "")", "vbscript");<br> tmp = 65536 tmp;<br> if(tmp>=45217 && tmp<=45252) return " A";<BR> if(tmp>=45253 && tmp<=45760) return "B";<BR> if(tmp>=45761 && tmp<=46317) return "C";<BR> if(tmp> =46318 && tmp<=46825) return "D";<BR> if(tmp>=46826 && tmp<=47009) return "E";<BR> if(tmp>=47010 && tmp<=47296) return " F";<BR> if((tmp>=47297 && tmp<=47613) || (tmp == 63193)) return "G";<BR> if(tmp>=47614 && tmp<=48118) return " H";<BR> if(tmp>=48119 && tmp<=49061) return "J";<BR> if(tmp>=49062 && tmp<49323) return "K";<BR> if(tmp> =49324 && tmp<=49895) return "L";<BR> if(tmp>=49896 && tmp<=50370) return "M";<BR> if(tmp>=50371 && tmp<=50613) return " N";<BR> if(tmp>=50614 && tmp<=50621) return "O";<BR> if(tmp>=50622 && tmp<50905) return "P";<BR> if(tmp> =50906 && tmp<=51386) return "Q";<BR> if(tmp>=51387 && tmp<=51445) return "R";<BR> if(tmp>=51446 && tmp<=52217) return " S";<BR> if(tmp>=52218 && tmp<=52697) return "T";<BR> if(tmp>=52698 && tmp<=52979) return "W";<BR> if(tmp> =52980 && tmp<=53688) return "X";<BR> if(tmp>=53689 && tmp<=54480) return "Y";<BR> if(tmp>=54481 && tmp<=62289) return " Z";<BR> return c.charAt(0);<BR>} <br><br>// 도우미 선택<BR>SelectHelper = new function() {<BR> // 初始化<BR> this.init = function() {<BR> document.attachEvent("onkeypress", function() {<BR> var elm = event.srcElement;<BR> if (elm.tagName == "SELECT" <BR> && elm.className .indexOf("SelectHelper") == -1) {<BR> elm.className = "SelectHelper";<BR> elm.attachEvent("onkeypress", SelectHelper.getNextKeyItem);<BR> elm.fireEvent("onkeypress" , event);<BR> }<BR> });<BR> }<BR> // 获取选项文本的首字符<BR> function getItemKeyChar(option) {<BR> return option.text.charAt(0) .toUpperCase();<BR> }<BR> // 查找并选中匹配的选项<BR> this.getNextKeyItem = function() {<BR> var elm = event.srcElement;<BR> var index = elm.selectedIndex 1;<BR> do {<BR> if (index == elm.length) index = 0; <BR> if (index == elm.selectedIndex) return false; // 未找到匹配的选项,则退出<BR> } while (key2Char(event.keyCode) != getPinYin(getItemKeyChar(elm.options[index ])));<BR> elm.selectedIndex = index - 1; // 选中匹配的选项<BR> return false; // 取消원유유의选择功能<BR> }<BR>};<BR>/**<BR> * 키보드 이벤트에 해당하는 문자 또는 숫자를 반환합니다. <BR> * a-z: 97 -> 122 <br> * A-Z: 65 -> 90<br> * 0-9: 48 -> 🎜>*/<br>function key2Char(key) {<br> var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";<br> if (key >= 97 && key <= 122) return s.charAt(key - 97);<BR> if (key >= 65 && key <= 90) return s.charAt(key - 65) ;<BR> if (key >= 48 && key <= 57) return "" (key - 48);<BR> return null;<BR>}<BR>SelectHelper.init();<BR>< ;/script><br></head><br><body><br>比如,某选项的拼音首字母为"a",只要按下键盘上的"a",就可以快速选择该项.<br /><br><select><br><OPTION selected value=北京>北京</OPTION><br><OPTION value=上海>上海</OPTION><br><OPTION value=天津>天津</OPTION><br><OPTION value=重庆>重庆</OPTION><br><OPTION value=河北>河北</OPTION><br><OPTION value=山西>山西</OPTION><br><OPTION value=内蒙古>内蒙古</OPTION><br><OPTION value=辽宁>辽宁</OPTION><br><OPTION value=32>32</OPTION><br><OPTION value=吉林>吉林</OPTION><br><OPTION value=黑龙江>黑龙江</OPTION><br><OPTION value=江苏>江苏</OPTION><br><OPTION value=浙江>浙江</OPTION><br><OPTION value=%&>&^</OPTION><br><OPTION value=安徽>安徽</OPTION><br><OPTION value=福建>福建</OPTION><br><OPTION value=北京>A1</OPTION><br><OPTION value=江西>江西</OPTION><br><OPTION value=山东>山东</OPTION><br><OPTION value=河南>河南</OPTION><br><OPTION value=湖北>湖北</OPTION><br><OPTION value=湖南>湖南</OPTION><br><OPTION value=31>31</OPTION><br><OPTION value=广东>广东</OPTION><br><OPTION value=广西>广西</OPTION><br><OPTION value=海南>海南</OPTION><br><OPTION value=北京>A2</OPTION><br><OPTION value=四川>四川</OPTION><br><OPTION value=贵州>贵州</OPTION><br><OPTION value=云南>云南</OPTION><br><OPTION value=西藏>西藏</OPTION><br><OPTION value=陕西>陕西</OPTION><br><OPTION value=甘肃>甘肃</OPTION><br><OPTION value=宁夏>宁夏</OPTION><br><OPTION value=青海>青海</OPTION><br><OPTION value=新疆>新疆</OPTION><br><OPTION value=香港>香港</OPTION><br><OPTION value=澳门>澳门</OPTION><br><OPTION value=台湾>台湾</OPTION><br><OPTION value=其它>其它</OPTION><br></SELECT><br><select><br><OPTION selected value=北京>北京</OPTION><br><OPTION value=上海>上海</OPTION><br><OPTION value=天津>天津</OPTION><br><OPTION value=重庆>重庆</OPTION><br><OPTION value=河北>河北</OPTION><br><OPTION value=山西>山西</OPTION><br><OPTION value=内蒙古>内蒙古</OPTION><br><OPTION value=辽宁>辽宁</OPTION><br><OPTION value=32>32</OPTION><br><OPTION value=吉林>吉林</OPTION><br><OPTION value=黑龙江>黑龙江</OPTION><br><OPTION value=江苏>江苏</OPTION><br><OPTION value=浙江>浙江</OPTION><br><OPTION value=%&>&^</OPTION><br><OPTION value=安徽>安徽</OPTION><br><OPTION value=福建>福建</OPTION><br><OPTION value=北京>A1</OPTION><br><OPTION value=江西>江西</OPTION><br><OPTION value=山东>山东</OPTION><br><OPTION value=河南>河南</OPTION><br><OPTION value=湖北>湖北</OPTION><br><OPTION value=湖南>湖南</OPTION><br><OPTION value=31>31</OPTION><br><OPTION value=广东>广东</OPTION><br><OPTION value=广西>广西</OPTION><br><OPTION value=海南>海南</OPTION><br><OPTION value=北京>A2</OPTION><br><OPTION value=四川>四川</OPTION><br><OPTION value=贵州>贵州</OPTION><br><OPTION value=云南>云南</OPTION><br><OPTION value=西藏>西藏</OPTION><br><OPTION value=陕西>陕西</OPTION><br><option value="간쑤">간쑤</option><br><option value="닝샤">닝샤</option><br><option value="칭하이">칭하이</option><br><option value="신장">신장</option><br><option value="홍콩">홍콩</option><br><option value="마카오">마카오</option><br><option value="대만">대만<OPTION value=Others>기타</OPTION><br></SELECT><br></body><br></html><br><div class="htmlarea"> <textarea id="runcode60134"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>드롭다운 목록에서 빠른 선택</title> <select>예를 들어 특정 옵션의 병음 첫 글자가 "a"인 경우 , 키보드에서 "a"를 누르면 항목을 빠르게 선택할 수 있습니다. <option selected value="北京"></option>베이징<option value="上海"></option>상하이<option value="天津"></option>텐진<option value="重庆"></option>충칭<option value="河北"></option>허베이<option value="山西"></option>산시<option value="内蒙古"></option>내몽골 <option value="辽宁"></option>랴오닝<option value="32"></option>32<option value="吉林"></option>길림<option value="黑龙江"></option>헤이룽장<option value="江苏"></option>장쑤<option value="浙江"></option>절강<option value="%&"></option>&^ <option value="安徽"></option>안후이<option value="福建"></option>푸젠<option value="北京"></option>A1<option value="江西"></option>장시<option value="山东"></option>산둥<option value="河南"></option>허난<option value="湖北"></option>후베이<option value="湖南"></option>후난<option value="31"></option>31<option value="广东"></option>광동<option value="广西"></option>광시<option value="海南"></option>하이난<option value="北京"></option>A2<option value="四川"></option>쓰촨<option value="贵州"> </option>귀저우<option value="云南"></option>운남<option value="西藏"></option>티베트<option value="陕西"></option>사시<option value="甘肃"></option>간쑤<option value="宁夏"></option>닝샤<option value="青海"></option>칭하이<option value="新疆"> </option>신장<option value="香港"></option>홍콩<option value="澳门"></option>마카오<option value="台湾"></option>대만<option value="其它"></option>기타</select><select><option selected value="北京"></option>베이징<option value="上海"></option>상해<option value="天津"></option>천진<option value="重庆"></option>충칭<option value="河北"></option>허베이<option value="山西"></option>산시<option value="内蒙古"></option>내몽골<option value="辽宁"></option>랴오닝<option value="32"></option>32 <option value="吉林"></option>길림<option value="黑龙江"></option>흑룡강<option value="江苏"></option>장쑤<option value="浙江"></option>절강<option value="%&"></option>&^<option value="安徽"></option>안후이<option value="福建"></option>푸젠<option value="北京"></option>A1<option value="江西"></option>장시<option value="山东"></option>산둥<option value="河南"></option>허난<option value="湖北"></option>후베이<option value="湖南"></option>후난<option value="31"></option>31<option value="广东"></option>광둥<option value="广西"></option>광시<option value="海南"></option>하이난<option value="北京"></option>A2<option value="四川"></option>쓰촨<option value="贵州"></option>구이저우<option value="云南"></option> 운남<option value="西藏"></option>티베트<option value="陕西"></option>산시<option value="甘肃"></option>간쑤<option value="宁夏"></option>닝샤<option value="青海"></option>칭하이<option value="新疆"></option>신장<option value="香港"></option>홍 홍콩<option value="澳门"> </option>마카오<option value="台湾"></option>대만<option value="其它"></option>기타</select></textarea> <br><input onclick="runEx('runcode60134')" type="button" value="运行代码"><input onclick="doCopy('runcode60134')" type="button" value="复制代码"> <input onclick="doSave(runcode60134)" type="button" value="保存代码"> <a href="http://www.jb51.net/article/23421.htm" title="查看具体详情" target="_blank">[Ctrl A 모두 선택 참고: </a>외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다. </div>]<br> <script type="text/javascript" language="JavaScript">// 获取拼音首字母function getPinYin(c) { execScript("tmp=asc(\""+c+"\")", "vbscript"); tmp = 65536 + tmp; if(tmp>=45217 && tmp<=45252) return "A"; if(tmp>=45253 && tmp<=45760) return "B"; if(tmp>=45761 && tmp<=46317) return "C"; if(tmp>=46318 && tmp<=46825) return "D"; if(tmp>=46826 && tmp<=47009) return "E"; if(tmp>=47010 && tmp<=47296) return "F"; if((tmp>=47297 && tmp<=47613) || (tmp == 63193)) return "G"; if(tmp>=47614 && tmp<=48118) return "H"; if(tmp>=48119 && tmp<=49061) return "J"; if(tmp>=49062 && tmp<=49323) return "K"; if(tmp>=49324 && tmp<=49895) return "L"; if(tmp>=49896 && tmp<=50370) return "M"; if(tmp>=50371 && tmp<=50613) return "N"; if(tmp>=50614 && tmp<=50621) return "O"; if(tmp>=50622 && tmp<=50905) return "P"; if(tmp>=50906 && tmp<=51386) return "Q"; if(tmp>=51387 && tmp<=51445) return "R"; if(tmp>=51446 && tmp<=52217) return "S"; if(tmp>=52218 && tmp<=52697) return "T"; if(tmp>=52698 && tmp<=52979) return "W"; if(tmp>=52980 && tmp<=53688) return "X"; if(tmp>=53689 && tmp<=54480) return "Y"; if(tmp>=54481 && tmp<=62289) return "Z"; return c.charAt(0);} // select helperSelectHelper = new function() { // 初始化 this.init = function() { document.attachEvent("onkeypress", function() { var elm = event.srcElement; if (elm.tagName == "SELECT" && elm.className.indexOf("SelectHelper") == -1) { elm.className += "SelectHelper"; elm.attachEvent("onkeypress", SelectHelper.getNextKeyItem); elm.fireEvent("onkeypress", event); } }); } // 获取选项文本的首字符 function getItemKeyChar(option) { return option.text.charAt(0).toUpperCase(); } // 查找并选中匹配的选项 this.getNextKeyItem = function() { var elm = event.srcElement; var index = elm.selectedIndex + 1; do { if (index == elm.length) index = 0; if (index == elm.selectedIndex) return false; // 未找到匹配的选项,则退出 } while (key2Char(event.keyCode) != getPinYin(getItemKeyChar(elm.options[index++]))); elm.selectedIndex = index - 1; // 选中匹配的选项 return false; // 取消原有的选择功能 }};/** * 返回键盘事件对应的字母或数字 * a-z: 97 -> 122 * A-Z: 65 -> 90 * 0-9: 48 -> 57 */function key2Char(key) { var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; if (key >= 97 && key <= 122) return s.charAt(key - 97); if (key >= 65 && key <= 90) return s.charAt(key - 65); if (key >= 48 && key <= 57) return "" + (key - 48); return null;}SelectHelper.init();