呵呵,onblur这样没什么用呀,它的定义是当前元素失去焦点时触发的事件。应该是:
<html>
<head>
<script language=javascript>
function aa()
{
if  (isNaN(document.form.text.value))
{
         alert("数量输入不正确,请重新输入。");
         
         return false
}
}  
</script><title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><body bgcolor="#FFFFFF">
<form method="post" action="" name="form" onsubmit="return aa()">
  <input type="text" name="text">
  <input type="submit"  value="Submit">
</form>
</body>
</html>onsubmit应该用在form标签上,是指当这个表单要提交的时候,就触发。
如果aa()返回true就提交,否则就不提交.

解决方案 »

  1.   

    onblur是在对象失去焦点时触发,onsubmit时在form提交之前触发,一般使用onchange和onblur检查出入数据的有效性,不过onchange比较好,因为只有当数据改变时才会触发onchange
      

  2.   

    加上楼上的意见,更好的用法是:
    <html>
    <head>
    <script language=javascript>
    function aa()
    {
    if  (isNaN(document.form.text.value))
    {
             alert("数量输入不正确,请重新输入。");
             return false
    }
    }  
    </script><title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </head><body bgcolor="#FFFFFF">
    <form method="post" action="" name="form">
      <input type="text" name="text"  onchange="if (aa()==false) this.value='0'">
      <input type="submit"  value="Submit">
    </form>
    </body>
    </html>
      

  3.   

    把<form method="post" action="" name="form" onsubmit="return aa()">
    漏了,呵呵...
      

  4.   

    onblur不是提交表单的,当然如果你愿意你也可以用
    onblur=this.submit(); 不过这样没有什么意义。你照样可以用onMouseOver=this.submit();onsubmit通常用来检查表单数据的有效性,而且一般是用returen yourfuncton();如果为false则停止递交表单。这与onblur是两回事。