`

当用js提交表单,document.forms[0].submit();没有submit按钮如何验证

阅读更多
用submit()提交表单致使onsubmit失效解决方法

用submit()提交表单 致使onsubmit失效解决方法 onclick方法失效
=========================================================================
下边本文中将要用到的脚本

程序代码

  
 <script language="javascript">
    //表单提交
    function submit1(obj){
        obj.submit();
    }
    //表单提交,调用checked函数
    function submit2(obj){
        return checked();
        obj.submit();
    }
    //表单提交,将ehecked函数内容写入submit3
    function submit3(obj){
        if(document.form1.username.value == ""){alert("姓名忘了填写?");document.form1.username.focus();return false;}
        obj.submit();
    }
    //表单验证
    function checked(){
        if(document.form1.username.value == ""){alert("姓名忘了填写?");document.form1.username.focus();return false;}
        return true;
    }
    </script>


复制代码

二、分析过程

1.通常的表单验证法,在form中加入onsumbit事件

程序代码
    <form id="form1" name="form1" method="post" action="mzwucom.asp" onsubmit="checked();">
      UserNmae:
      <input name="username" type="text" id="username" size="10" maxlength="10" />
      <input type="submit" name="Submit" value="提交" />
    </form>


复制代码

结果:验证机制发生作用!

2.在1的基础上改为通过调用submit()方法提交表单(红色为和1相比修改部分,下同)

程序代码

   
<form id="form1" name="form1" method="post" action="mzwucom.asp" onsubmit="checked();">
      UserNmae:
      <input name="username" type="text" id="username" size="10" maxlength="10" />
      <input type="button" name="Submit" value="提交" onclick="submit1(this.form);" />
    </form>


复制代码

结果:验证机制失效,表单直接提交!

3.在1的基础上去掉onsubmit事件,调用submit2

程序代码

  
 <form id="form1" name="form1" method="post" action="mzwucom.asp">
      UserNmae:
      <input name="username" type="text" id="username" size="10" maxlength="10" />
      <input type="button" name="Submit" value="提交" onclick="submit2(this.form);" />
    </form>


复制代码

结果:验证机制发生作用,但正确时表单没有提交,由于return true在submit()前!

4.在1的基础上去掉onsubmit事件,调用submit3

程序代码

   
<form id="form1" name="form1" method="post" action="mzwucom.asp">
      UserNmae:
      <input name="username" type="text" id="username" size="10" maxlength="10" />
      <input type="button" name="Submit" value="提交" onclick="submit3(this.form);" />
    </form>


复制代码

结果:验证机制发生作用,通过则提交表单!
==========================================================
用submit()提交表单 致使onsubmit失效解决方法 onclick方法失效
分享到:
评论

相关推荐

    document.forms[].submit()使用介绍

    表示获取当前页面的所有表单 (2)document.forms[0]:表示获取当前页面的第一个表单 (3)document.forms[‘exportServlet’]:表示获取当前页面的name=”exportServlet”的表单 (4)submit()表示提交函数

    VB6利用webbrower控件自动填写并提交表单.rar

     本程序中完成提交的方法提供两种,直接提交表单和点击登录按钮提交,还有第三种方法填表完成后直接用WebBrowser1.Document.Forms("login").Submit,如果您安装的是IE7,在VB开发环境下运行可能会遇到莫名其妙的...

    js验证表单 js验证表单

    else document.forms[0].submit(); } } 够了吧 :) 屏蔽右键 很酷 oncontextmenu="return false" ondragstart="return false" onselectstart="return false" 加在body中 二 2.1 表单项不能为空 ...

    VB实现自动填表并提交表.7z

    还有第三种方法填表完成后直接用WebBrowser1.Document.Forms("Login").Submit 如果您安装的是IE7,在VB开发环境下运行可能会遇到莫名其妙的浏览器错误 但是编译为本地代码后运行无任何问题,目前还未找到原因为何...有...

    jsp有关表单的操作

    jsp中有关表单的一些操作,对初学这有很大帮助例子1:复选框例子 ...return false;"&gt; 是"&gt;你接受吗 你是党员吗 &lt;input type=submit &gt; function doMethod(){ ... //document.forms[0].submit(); } 例子2:单选按钮

    jsp表单验证汇总

    js验证表单大全js验证radio是否选择 &lt;script language="javascript"&gt;function checkform(obj){for(i=0;i&lt;obj.oo.length;i++) if(obj.oo[i].checked==true) return true; alert("请选择")return false; }&lt;/script&gt;...

    表单验证大全

    else document.forms[0].submit(); } } [removed] 够了吧 :) 屏蔽右键 很酷 oncontextmenu="return false" ondragstart="return false" onselectstart="return false" 加在body中 二 2.1 表单项不能为空 ...

    javascript实现表单提交后,提交按钮不可用的方法

    这里使用javascript控制表单提交后,提交按钮不可用,可以防止用户多次提交。 &lt;html&gt; &lt;head&gt; &lt;meta http-equiv=Content-Type content=text/html; charset=utf-8/&gt; &lt;title&gt;表单提交后按钮...

    JS控制表单提交的方法

    本文实例讲述了JS控制表单提交的方法。分享给大家供大家参考。...如果需要两个提交按钮,type=””的属性值一个高为”submit”一个为”button”,也就是一个用按钮本身提交,一个用JS控制提交 &lt;form method

    表单项的name命名为submit、reset引起的问题

    最近朋友使用了form的一个表单命名为关键词引起了无法reset和提交.原来是这个问题“调用document.forms[0].reset()报错?”,马上问他:“页面有表单吗?”,回答:“有”。“你alert一下document.forms[0]”,“弹...

    javajsp实现了js验证表单

    f=document.forms["form1"]; vkeyWords=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.&lt;&gt;/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;'\,.&lt;&gt;?]{0,19}$/; if( f.t.value=="") { alert("请输入正确的查询参数"); ...

    VB自动填表工具[附源码]

    VB做的网站自动填表 附带源码 本程序中完成提交的方法提供两种,直接提交表单和点击登录按钮提交 还有第三种方法填表完成后直接用WebBrowser1.Document.Forms("login").Submit

    了解JavaScript表单操作和表单域

    一、表单的获取方式 1.document.getElementById() 2.document.forms[index]; 3.document.forms[form_name] ...frm = document.forms[0]; console.log(frm); frm = document.forms[aaform]; console.log(f

    一个JavaScript防止表单重复提交的实例

    &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv=Content-Type content=text/html; charset=UTF-8 /&gt; &lt;...防止重复表单提交&lt;...background-color: #ff0;...document.forms[pi

    form-js:查看和编辑基于JSON的表单

    form-js-由bpmn.io支持的表单 和基于JSON的表单。用法该库导出表单查看器和编辑器。显示表格根据和现有数据呈现表单: import { createForm } from '@bpmn-io/form-js' ;const form = createForm ( { schema , data ...

    符合标准的js表单提交的代码

    代码如下:[removed] document.forms[“form_name”].submit(); [removed]

    JavaScript_DOM编程

    forms数组:所有表单类数组 anchors数组 links数组 images数组 scripts数组 applets数组 all数组:所有标签数组 styleSheets数组:样式表对象数组 body对象:嵌入在body标签内的标签可以作为body的子元素...

    JavaWeb实验报告.doc

    charset=utf-8"&gt; 注册&lt;/title&gt; &lt;script language="javascript"&gt; function check(){ var userid = new String(document.forms[0].userid.value); var password = new String(document.forms[0].password.value); if...

    js对象层次• navigator •screen•window

    • navigator • screen • window o history o location o frames[]; Frame o document  anchors[]; links[];... forms[];... 提交按钮对象  文本框对象  多行文本输入区对象  图片对象

    ExtAspNet_v2.3.2_dll

    目标是创建没有ViewState,没有JavaScript,没有CSS,没有UpdatePanel,没有WebServices的Web应用程序。 支持的浏览器: IE 7.0+, Firefox 3.0+, Chrome 2.0+, Opera 9.5+, Safari 3.0+ 注:ExtAspNet基于一些开源...

Global site tag (gtag.js) - Google Analytics