動態提示的下拉框
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>動態提示的下拉框</title>
<style>
a{color:red;text-decoration:none;font-size:12px}
</style>
</head>
<body onLoad="Init()">
<center>
<h2>動態提示的下拉框</h2>
<hr>
<form name=frm>
<table>
? <tr>
??? <td>請輸入1或2或3或4或5進行測試:<br><input name="txt" style="width:100px" onKeyUp="SelectTip(0)"> <input type="button"
value="reset" onClick="SelectTip(1)"></td>
? </tr>
? <tr>
??? <td>
??? <span id="demo"><select name="demo" style="width:100px" size=10 onChange="txt.value=options[selectedIndex].text;">
?<option value="1">1</option>
??????? <option value="1">1中</option>
?<option value="12">12</option>
?<option value="123">123</option>
?<option value="1234">1234</option>
?<option value="2">2</option>
?<option value="23">23</option>
?<option value="234">234</option>
?<option value="2345">2345</option>
?<option value="3">3</option>
?<option value="34">34</option>
?<option value="345">345</option>
?<option value="3456">3456</option>
?<option value="5">5</option>
?<option value="51">51</option>
?<option value="51w">51w</option>
?<option value="51wi">51wi</option>
?<option value="51win">51win</option>
?<option value="51windows">51windows</option>
?</select></span>
??? </td>
? </tr>
?</form>
</table>
<hr>
<script language="javascript">
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>
posted on 2007-09-20 09:02 李云澤 閱讀(234) 評論(0) 編輯 收藏 所屬分類: javascript