select 下拉框搜索实现模糊查询
程序员文章站
2022-07-01 12:58:10
...
方法一(h5 datalist标签实现)
效果
不输入时:
输入1:
输入2:
code
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META content="fason,阿信" name=Author>
<title>动态提示的下拉框</title>
<style>
</style>
</head>
<body onload="Init()">
<center>
<h2>动态提示的下拉框</h2>
<hr>
<form name=newform>
<table>
<tr>
<td>请输入1或2或3或4或5进行测试:
<input list="aaa" style="width:100px" size=10>
<datalist id="aaa" style="width:100px" size=10 >
<option value="1">
<option value="12">
<option value="123">
<option value="1234">
<option value="2">
<option value="23">
<option value="234">
<option value="2345">
</datalist>
</td>
</tr>
</form>
</table>
<hr>
</body>
方法二(js+select标签实现)
效果
不输入时:
输入23:
code
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META content="fason,阿信" name=Author>
<title>动态提示的下拉框</title>
<style>
</style>
</head>
<body onload="Init()">
<center>
<h2>动态提示的下拉框</h2>
<hr>
<form name=newform>
<table>
<tr>
<td>请输入1或2或3或4或5进行测试:<br><input name="txtPlace" style="width:100px" onkeyup="SelectTip(0)"> </td>
</tr>
<tr>
<td>
<span id="myselect"> <select name="myselect" style="width:100px" size=10 onchange="txtPlace.value=options[selectedIndex].text;" id="sq2" >
<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>
</span> </select>
</td>
</tr>
</form>
</table>
<hr>
<td>
<script language="javascript">
var TempArr=[];//存贮option
function Init(){
var SelectObj=document.newform.elements["myselect"]
/*先将数据存入数组*/
with(SelectObj)
for(i=0;i<length;i++)TempArr[i]=[options[i].text,options[i].value]
}
function SelectTip(flag){
var TxtObj=document.newform.elements["txtPlace"]
var SelectObj=document.getElementById("myselect")
var Arr=[]
with(SelectObj){
var SelectHTML=innerHTML.match(/<[^>]*>/)[0]
for(i=0;i<TempArr.length;i++)
if(TempArr[i][0].indexOf(TxtObj.value)!=-1||flag)//数组中若找到输入的内容,添option。若flag为true,对下拉框初始化
Arr[Arr.length]="<option value='"+TempArr[i][1]+"'>"+TempArr[i][0]+"</option>"
innerHTML=SelectHTML+Arr.join()+"</SELECT>"
}
}
</script>
</body>
上一篇: 一语双关逗女朋友笑话
下一篇: 应该用不着菩萨保佑了吧