onfocus="this.blur();window.open('2.htm','','width=200,height=200')"

解决方案 »

  1.   

    设置一个参数
    var bfoucus=false;
    function focusfun(){
      bfoucus=true;
      if(!bfocus){
        var s=showModuleDialog("b.htm",window,"");
        if(s==undefined){
           bfoucus=false;
           return ;
        }
        //这里修改数值
        bfoucus=false;
      }
    }
      

  2.   

    谢谢楼上的兄弟
    可能是我举例的代码不合适
    事实上,一个页面里有20多个<input>需要用onfocus,而且每个onfocus的参数都不一样亚。所以最好在b.htm里设置。很多日历控件都是这么做的,可以重复获得焦点、修改数值。但是看不懂代码。
      

  3.   

    function focusfun(){
      var object=event.srcElement;
      object.onfocus=null;
        var s=showModuleDialog("b.htm",window,"");
        if(s==undefined){
           object.onfocus=focusfun;
           return ;
        }
        //这里修改数值
        object.onfocus=focusfun;
      }
    }这样试一试
      

  4.   

    我想要的功能是 像很多日期控件一样。用户需要修改数值时《input》可以重复获得焦点,弹出窗口
        而且因为每个<input onfocus>的参数不一样,所以最好 把相关的事件处理 放到b.htm里,也就是放到 弹出窗口里处理