取值时判断下值大小 或者 值长度 如果 从1309 开始, 那么取值时判断值是不是1309 如果不是 return ;或者判断长度小于5 return ; 

解决方案 »

  1.   

    加个setTimeout就行了 每次触发完毕事件等待1秒再验证 如果1秒内再次触发事件则clearTimeout并且再次开始setTimeout.
      

  2.   

    可以参考JKCombox:
    http://download.csdn.net/user/jk_10000 JKCombox里的第二个参数:
    function jkCombox_init(objId,minLengthForCombox,handleForItemHtml,handleForValue)
      

  3.   

    songpengasp 给的方法在哪改啊。偶是初学者,只会调用给个正确的吧。多谢了
      

  4.   

    function f_FillCurrentEmail(){
     if(g_CurrentTd==null||g_InputObject==null){return;};
     if(g_ArrEmailList==null||g_ArrEmailList.length==0){return;};
     var i=parseInt(g_CurrentTd.zIndex);
     var s=g_OldInnerTxt;
     if(g_OldInnerTxt!=""){s+=",";};
     g_InputObject.focus();
     g_InputObject.value=s+g_ArrEmailList[i][1];f_SetDivDisplay(false);g_CurrentTd=null;};修改为
    function f_FillCurrentEmail(){
     if(g_CurrentTd==null||g_InputObject==null){return;};
     if(g_ArrEmailList==null||g_ArrEmailList.length<5){return;};//////////////////////////
     var i=parseInt(g_CurrentTd.zIndex);
     var s=g_OldInnerTxt;
     if(g_OldInnerTxt!=""){s+=",";};
     g_InputObject.focus();
     g_InputObject.value=s+g_ArrEmailList[i][1];f_SetDivDisplay(false);g_CurrentTd=null;};
      

  5.   

    调用是下面这样调用的。songpengasp 您7楼的方法还是不行。
    <P>ABC:&nbsp <input id="bm"  type="text" name="bm"  value="" maxlength="9" size="20" style="margin:0;padding:0;height:10px!important;height:20px;" autocomplete="off" name="to" onKeyDown="return f_OnKeyDown(this,event)" onKeyUp="f_OnKeyUp(this,event)" onBlur="f_OnBlur();"  tabindex="1" onDblClick="alert(this.value)"  >
      

  6.   

    早说  就不用在这猜了 function f_OnKeyDown(obj,event){
     if(obj!=g_InputObject){
      if(g_MainDiv!=null){g_MainDiv.innerHTML="";g_MainDiv=null;};
      g_OldInnerTxt="";g_NewInnerTxt="";g_FirstTd=null;g_CurrentTd=null;g_InputObject=obj;};
      f_InitMain();
      var kc=event.keyCode;
      switch(kc){修改为
    function f_OnKeyDown(obj,event){
     if(obj!=g_InputObject && obj.value.length > 4){
      if(g_MainDiv!=null){g_MainDiv.innerHTML="";g_MainDiv=null;};
      g_OldInnerTxt="";g_NewInnerTxt="";g_FirstTd=null;g_CurrentTd=null;g_InputObject=obj;};
      f_InitMain();
      var kc=event.keyCode;
      switch(kc){
      

  7.   

    出错了, g_AddlistContainer.style 为空或不是对象。
      

  8.   

    songpengasp 修改完了,报错了,g_AddlistContainer.style   为空或不是对象。
      

  9.   

    不介意的话把所有的代码都发给我吧songpengf117@163.com
      

  10.   

    修改下面函数   function f_GetArrEmailList(event){
     if(g_InputObject==null){return null;};
     var s=g_InputObject.value;
     var k=s.length;
     var iLastSign=0;
     if(s.lastIndexOf(",")>s.lastIndexOf(";")){
      iLastSign=s.lastIndexOf(",");}else{iLastSign=s.lastIndexOf(";");};
      g_NewInnerTxt=s.substring(iLastSign+1,k);
        
      if(event.keyCode==8){
       g_NewInnerTxt=s.substring(iLastSign+1,k-1);};
       
       g_NewInnerTxt=f_Trim(g_NewInnerTxt);
       g_OldInnerTxt=s.substring(0,iLastSign);
       g_OldInnerTxt=f_Trim(g_OldInnerTxt);
       var arr=new Array();
       var re;
       var j=0;
       if(g_NewInnerTxt.length < 5) return arr;///////////如果长度小于5 返回空数组
       if(g_NewInnerTxt==""){
        if(event.keyCode==32)arr=gArrEmailAddress;}
        else{
        try{re=new RegExp("^"+g_NewInnerTxt,"i");
        for(var i=0;i<gArrEmailAddress.length;i++){
        if(re.test(gArrEmailAddress[i][0])||re.test(gArrEmailAddress[i][1])){
       
         arr[j]=gArrEmailAddress[i];j++;};
        
        };
        }
        catch(ex){};};
        return arr;};
      

  11.   

    感谢 songpengasp 。呵呵。