JS中对于form表单提交时验证form的onsubmit函数与submit类型按钮的onclick函数 JS中对于form表单提交时验证form的onsubmit函数与submit类型按钮的onclick函数

JS中对于form表单提交时验证form的onsubmit函数与submit类型按钮的onclick函数

(还有把type改为button ,在button的onclick事件的函数中提交表单,研究一下)

onsubmit只能表单上使用,提交表单前会触发, onclick是按钮等控件使用, 用来触发点击事件。

在提交表单前,一般都会进行数据验证,可以选择在submit按钮上的onclick中验证,也可以在onsubmit中验证。

但是onclick比onsubmit更早的被触发。

  提交过程

1、用户点击按钮 —->

2、触发onclick事件 —->

3、onclick返回true或未处理onclick —->

4、触发onsubmit事件 —->

5、onsubmit未处理或返回true ——>

6、提交表单.

 onsubmit处理函数返回false,onclick函数返回false,都不会引起表单提交。
  • 1
  • 2

第一种:onsubmit

<script language="javascript">
   function CheckPost ()
   {
      if (addForm.user.value == "")
      {
          alert("请填写用户名!");
          addForm.username.focus();
          return false;
      }
     if (addForm.title.value.length < 5)
     {
          alert("标题不能少于5个字符!");
          addForm.title.focus();
          return false;
     }
     return true;
   }
</script>

<form action="test.php" method="post" name="addForm"  onsubmit="return CheckPost();">
     <div>用户:<input type="text" size="10" name="user" maxlength="20"/></div>
     <div>标题:<input type="text" name="title" maxlength="50"/></div>
     <div>内容:<textarea name="content" rows="8" cols="30"></textarea></div>
     <div>
           <input type="submit" name="submit" value="发表留言"/>
     </div>
</form>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

第二种:onclick

<script language="javascript">
    function SendForm () 
    {
        if(CheckPost()) 
        {
            document.addForm.submit();
        }
    }

    function CheckPost () 
    {
         if (addForm.user.value == "") 
         {
               alert("请填写用户名!");
               addForm.username.focus();
               return false;
         }
         if (addForm.title.value.length < 5) 
         {
               alert("标题不能少于5个字符!");
               addForm.title.focus();
               return false;
         }
         return true;
    }
</script>

<form action="test.php" method="post" name="addForm">
     <div>用户:<input type="text" size="10" name="user" maxlength="20"/></div>
     <div>标题:<input type="text" name="title" maxlength="50"/></div>
     <div>内容:<textarea name="content" rows="8" cols="30"></textarea></div>
     <div><input type="button" name="submit" value="发表留言" onclick="SendForm();"/></div>
</form>

猜你喜欢

转载自blog.csdn.net/f45056231p/article/details/80955773
今日推荐