onsubmit阻止表单提交

    xiaoxiao2023-03-24  2

    在实际开发中往往会遇到检查表单数据的合法性,如果数据不合法,就不让其提交。

    先看以下简单的代码。

    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <script language="javascript"> //---> function checksubmit() { if (document.form1.myname.value=="") { alert("请输入开始数值!"); document.form1.myname.focus(); return false; } return true; } //---> </script> <form name="form1" method="post" action="#" οnsubmit="return checksubmit()"> <label> <input name="myname" type="text" id="id"> </label> <p> <label> <input type="submit" name="Submit" value="提交"> </label> </p> </form>

    代码很简单。

    注意以下几点:

    1,在js中,是获得input的name,而不是id,往往这里的name和id一样。

    2,οnsubmit="return checksubmit()" 这里的return不能省掉。

    3,checksubmit()函数里面的return true;可以省去,因为默认是返回true;

    在JavaScript中,阻止表单默认提交行为的方法有两种,分别是:

    (1) return false

    示例代码

    ? <form name="loginForm" action="login.aspx" method="post"> <button type="submit" value="Submit" id="submit">Submit</button> </form> <script> var submitBtn = document.getElementById("submit"); submitBtn.onclick = function (event) { alert("preventDefault!"); return false; }; </script>

    (2) 使用preventDefault()

    在标准浏览器中,阻止浏览器默认行为使用event.preventDefault(),而在IE6~8中,使用returnValue属性来实现。

    示例代码

    <form name="loginForm" action="login.aspx" method="post"> <button type="submit" value="Submit" id="submit">Submit</button> </form> <script> var submitBtn = document.getElementById("submit"); submitBtn.onclick = function (event) { alert("preventDefault!"); var event = event || window.event; event.preventDefault(); // 兼容标准浏览器 window.event.returnValue = false; // 兼容IE6~8 }; </script>

    ?

    以上就是利用JavaScript来阻止表单提交的两种方法的全部内容,希望本文的内容对大家使用JavaScript有所帮助。

    转载请注明原文地址: https://ju.6miu.com/read-1200099.html
    最新回复(0)