- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
- <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
- <meta name="ProgId" content="FrontPage.Editor.Document">
- <META content="fason,阿信" name=Author>
- <META content="提示,下拉框" name=Keywords>
- <title>动态提示的下拉框</title>
- <style>
- a{color:red;text-decoration:none;font-size:12px}
- </style>
- </head>
- <body οnlοad="Init()" bgcolor="#3366cc">
- <center>
- <h2>动态提示的下拉框</h2>
- <hr>
- <form name=frm>
- <table>
- <tr>
- <td>
- <input name="txt" style="width:100px" οnkeyup="SelectTip(0)">
- <input type="button" value="reset" οnclick="SelectTip(1)"></td>
- </tr>
- <tr>
- <td>
- <span id="demo"><select name="demo" style="width:100px" size=10 οnchange="txt.value=options[selectedIndex].text;"></select></span>
- </td>
- </tr>
- </form>
- </table>
- <hr>
- <script language="javascript">
- /*测试用*/
- for(i=0;i<100;i++)
- document.frm.demo.options[document.frm.demo.length]=new Option(String(Math.random()).substr(2,8))
- var TempArr=[];//存贮option
- function Init(){
- var SelectObj=document.frm.elements["demo"]
- /*先将数据存入数组*/
- with(SelectObj)
- for(i=0;i<length;i++) TempArr[i]=[options[i].text,options[i].value]
- }
- function SelectTip(flag){
- var TxtObj=document.frm.elements["txt"]
- var SelectObj=document.getElementById("demo")
- var Arr=[]
- with(SelectObj){
- var SelectHTML=innerHTML.match(/<[^>]*>/)[0]
- for(i=0;i<TempArr.length;i++)
- if(TempArr[i][0].indexOf(TxtObj.value)==0||flag)//若找到以txt的内容开头的,添option。若flag为true,对下拉框初始化
- Arr[Arr.length]="<option value='"+TempArr[i][1]+"'>"+TempArr[i][0]+"</option>"
- innerHTML=SelectHTML+Arr.join()+"</SELECT>"
- }
- }
- </script>
- </body>
- </html>
转载于:https://blog.51cto.com/huqianhao/953228