userName.onkeypress = alert('kk');userName.onkeypress = function(){alert('kk')};
你自己分别试下2者的区别 就明白了

解决方案 »

  1.   

    太感谢了 虽然没有完全懂 还是懂了一些我刚才把代码改成 
     userName.onkeypress=function(){checkFormat(!/^\w{2,16}$/.test(userName.value),userName);
    就行了 那么实际开发中会遇到这种问题吗  如果会的话怎么解决呢 
     
    }
      

  2.   

    function fn(){
    }
    userName.onkeypress = fn;
    userName.onkeypress = fn();
      

  3.   

    太感谢了 虽然没有完全懂 还是懂了一些我刚才把代码改成 
     userName.onkeypress=function(){checkFormat(!/^\w{2,16}$/.test(userName.value),userName);
    就行了 那么实际开发中会遇到这种问题吗  如果会的话怎么解决呢 
     
    }
    只要最终结果是按我的需求跑的 那么就是对的
    所以怎么解决问题 就是让他按你的意愿走
    如果没按照你的意愿走 那么就是有问题
    如果按照你的意愿就 还有问题 那么重新整理下需求
    反复之后 必定是正确的结果
      

  4.   

    正则写到checkFormat里面验证   目前 //.test(username.value)  ,找不到username吧