页面上有一个textbox和一个button。textbox有onblur事件,button是onclick事件。
在textbox输入内容后直接点击button,会依次引发textbox的onblur和button的onclick事件。
我想要的是在执行onblur事件的时候,检查输入的内容,如果输入有问题,阻止onclick事件的执行,不在onclick里面来验证textbox的输入情况,该如何做?

解决方案 »

  1.   

    给TextBox添加一个 isValid方法, 用来检验TextBox是否被验证....如果验证再执行之后的语句..如果通过添加/禁止 onclick 事件很麻烦...
      

  2.   

    这个不知道合用不<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Untitled Page</title>
    </head>
    <body>
        <input type="submit" value="submit" onclick="submit()" id="btn1" />
        <input type="text" id="text1" />
    </body>
    </html><script type="text/javascript">
    var btn1=document.getElementById("btn1");
    var text1=document.getElementById("text1");
    text1.onblur=function()
    {
        if(text1.value=="")
        {
          alert("empty");
        }
        else
        {
        btn1.click();
        }
    }function submit()
    {
    alert("submit");
    }</script>
      

  3.   

    不能编辑,改了下
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Untitled Page</title>
    </head>
    <body>
        <input type="submit" value="submit" onclick="submit()" id="btn1" />
        <input type="text" id="text1" />
    </body>
    </html><script type="text/javascript">
    var btn1=document.getElementById("btn1");
    var text1=document.getElementById("text1");
    text1.onblur=function()
    {
        if(text1.value=="")
        {
          alert("empty");
        }
      }function submit()
    {
    alert("submit");
    }</script>
      

  4.   

    给textbox添加keyup事件,每当输入一个字母的时候,就会检查一下,或者用keypress事件,onchange事件都可以的