<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>

解决方案 »

  1.   

    <script>
    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>
      

  2.   


    for(...)
    {
     if(indexof('第四') != -1)
       do...........
    }
      

  3.   

    to   zhaoxiaoyang(梅雪香@hisoft) 
    如果是这样
    <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>
    就不行了,得怎么改?
      

  4.   

    其实我要的方法很简单, leo963258(读书之人), vipfenghuang(张伟)的方法是可以满足的
    <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>谢谢各位!
      

  5.   

    var reg=new RegExp(src.text);
    把用value测试变成用text测试就可以了