这是以前我在csdn里摘录下来的例子,希望对你有用:<HTML>
<HEAD>
<TITLE>Text和Select联动演示</TITLE>
<script>
var oTx, oSel;
var V=new Array();  //存放value的数组
var T=new Array();  //存放text的数组function bAry() {
  oTx=document.form1.sid;
  oSel=document.form1.orders;
  for(var i=0;i<oSel.options.length;i++) {
    V[i]=oSel.options[i].value;
    T[i]=oSel.options[i].text;
  }
}function aSel(sTx) {
  oSel.options.length=0;
  for(var i=0;i<V.length;i++) {
    if(V[i].indexOf(sTx)==0)
      oSel.options.add(new Option(T[i],V[i]));
  }
}function hSel() {
  var sTx;
  sTx=oTx.value;
  if(event.keyCode==46||event.keyCode==8){
    aSel(sTx);
    return;
  }
  for(var i=0;i<V.length;i++){
    if(oSel.options(i)!=undefined){
      if(oSel.options(i).value.indexOf(sTx)!=0){
        oSel.remove(i);
        hSel();
      }
    }
  }
}
</script>
</HEAD>
<BODY onLoad="bAry();">
<form name="form1">
  <input type=text name='sid' value="" onKeyUp="hSel();">
  <select name='orders'>
    <option value='10011'>10011</option>
    <option value='10021'>10021</option>
    <option value='10111'>10111</option>
    <option value='13011'>13011</option>
    <option value='20011'>20011</option>
    <option value='20012'>20012</option>
    <option value='20112'>20112</option>
    <option value='21012'>21012</option>
    <option value='22012'>22012</option>
    <option value='30011'>30011</option>
    <option value='30012'>30012</option>
    <option value='30112'>30112</option>
    <option value='31012'>31012</option>
    <option value='40011'>40011</option>
    <option value='40012'>40012</option>
  </select>
</form>
</BODY>
</HTML>