你option中的内容是数据库表中的吗?

解决方案 »

  1.   

    <input name=txt onkeyup=change()>
    <select name=sel>
    <option value=1>1</option>
    <option value=2>2</option>
    <option value=3>3</option>
    <option value=4>4</option>
    <option value=5>5</option>
    </select>
    <script>
    var sel=document.all.sel;
    var sels=new Array();
    for(i=0;i<sel.options.length;i++){
      sels[i]=new Array(2);
      sels[i][0]=parseInt(sel.options[i].value);
      sels[i][1]=sel.options[i].text;
    }
    //sort(sel);//按照value值从小到大的顺序排序,
    //你可以使用任何一种排序方法,
    //如果select最初就是有序的
    //像上面那样,则无需排序
    function change(){
    //省略了对输入是否是数字的验证
      var val=parseInt(document.all.txt.value);
      var pos=0;
      var flag=false;
      for(i=0;i<sels.length;i++)
        if(val-sels[i][0]<=0){
          pos=i;flag=true;break;
        }
      if(!flag)pos=sels.length;  for(i=0;i<sels.length-pos;i++){
        sel.options[i].value=sels[i+pos][0];
        sel.options[i].text=sels[i+pos][1];
      }
      for(i=sels.length-pos;i<sels.length;i++){
        sel.options[i].value=sels[sel.length-i-1][0];
        sel.options[i].text=sels[sel.length-i-1][1];
      }
    }
    function sort(ary){
    //这是你的排序函数
    }
    </script>
      

  2.   

    嘿, freefalcon(心宇)好样的!!!
    不过明天再结帖好吗??
    看看 sportdog(kill)的怎么样!