<html>
<head>
<script language="JavaScript">
<!--
var arrList=null;
function init(){
var dltObj=document.getElementById("dltShow");
var opts=dltObj.options;
var len=opts.length;
arrList= new Array(len);
for(var i=0;i<len;i++)
arrList[i]=opts[i].value.toLowerCase();
}
function keyup(src){
var strHTML="";
var dltObj=document.getElementById("dltShow");
var len=src.value.length;
for(var i=0;i<arrList.length;i++){
var reg=new RegExp(src.value);
if(reg.test(arrList[i]))
strHTML+='<option value="'+arrList[i]+'">'+arrList[i]+'</option>';
}
dltObj.outerHTML='<select id="dltShow" style="width:100% " multiple size="10">'+strHTML+'</select>';
if(document.getElementById("dltShow").options.length==1){
src.value=document.getElementById("dltShow").options[0].value;
}
}
//-->
</script>
</head>
<body onLoad="init();">
<table cellpadding="0" cellspacing="0" border="0" width="300px">
<tr>
<td width="150"><input type="text" id="txtInput" onpropertychange ="keyup(this)" style="width:100% "></td>
<td width="150">
<select id="dltShow" style="width:100% " multiple size="10">
<option value="http://www.163.com">http://www.163.org</option>
<option value="http://www.sina.com">http://www.sina.com</option>
<option value="http://www.sohu.com">http://www.sohu.com</option>
<option value="http://card.163.com">http://card.163.net</option>
<option value="http://card.sina.com">http://card.sina.com</option>
<option value="http://news.sohu.com">http://news.sohu.com</option>
<option value="http://news.china.com">http://news.china.com</option>
<option value="http://www.sohu.com">http://www.sohu.com</option>
<option value="一见如故">一见如故</option>
<option value="一见倾心">一见倾心</option>
<option value="一面之缘">一面之缘</option>
<option value="三心二意">三心二意</option>
</select>
</td>
</tr>
</table>
</body>
</html>
<head>
<script language="JavaScript">
<!--
var arrList=null;
function init(){
var dltObj=document.getElementById("dltShow");
var opts=dltObj.options;
var len=opts.length;
arrList= new Array(len);
for(var i=0;i<len;i++)
arrList[i]=opts[i].value.toLowerCase();
}
function keyup(src){
var strHTML="";
var dltObj=document.getElementById("dltShow");
var len=src.value.length;
for(var i=0;i<arrList.length;i++){
var reg=new RegExp(src.value);
if(reg.test(arrList[i]))
strHTML+='<option value="'+arrList[i]+'">'+arrList[i]+'</option>';
}
dltObj.outerHTML='<select id="dltShow" style="width:100% " multiple size="10">'+strHTML+'</select>';
if(document.getElementById("dltShow").options.length==1){
src.value=document.getElementById("dltShow").options[0].value;
}
}
//-->
</script>
</head>
<body onLoad="init();">
<table cellpadding="0" cellspacing="0" border="0" width="300px">
<tr>
<td width="150"><input type="text" id="txtInput" onpropertychange ="keyup(this)" style="width:100% "></td>
<td width="150">
<select id="dltShow" style="width:100% " multiple size="10">
<option value="http://www.163.com">http://www.163.org</option>
<option value="http://www.sina.com">http://www.sina.com</option>
<option value="http://www.sohu.com">http://www.sohu.com</option>
<option value="http://card.163.com">http://card.163.net</option>
<option value="http://card.sina.com">http://card.sina.com</option>
<option value="http://news.sohu.com">http://news.sohu.com</option>
<option value="http://news.china.com">http://news.china.com</option>
<option value="http://www.sohu.com">http://www.sohu.com</option>
<option value="一见如故">一见如故</option>
<option value="一见倾心">一见倾心</option>
<option value="一面之缘">一面之缘</option>
<option value="三心二意">三心二意</option>
</select>
</td>
</tr>
</table>
</body>
</html>
var text=docment.all.sreach_text.value
for(i=0,i<document.all.sel.length,i++){
if(document.all.sel.options[i].value==text){
document.all.sel.options[i].selected=true
}
}
</script>
for(...)
{
if(indexof('第四') != -1)
do...........
}
如果是这样
<option value='第一项'>第一项</option>
<option value='第二项'>第二项</option>
<option value='第三项'>第三项</option>
<option value='第四项'>第四项</option>
按你的方法可以实现
假如是
<option value='1'>第一项</option>
<option value='2'>第二项</option>
<option value='3'>第三项</option>
<option value='4'>第四项</option>
就不行了,得怎么改?
<script>
var text=docment.all.sreach_text.value;
for(i=0;i<document.all.sel.length;i++){
if(document.all.sel.options[i].text.indexOf(text)!=-1){
document.all.sel.options[i].selected=true;
break;
}
}
</script>谢谢各位!
把用value测试变成用text测试就可以了