利用JS提交表单的几种方法和验证(必看篇)


Posted in Javascript onSeptember 17, 2016

工作中发现表单提交方便的问题,很多时候IE下提交好好的,打了火狐下就出现了问题,利用提交按钮就不成功了,于是利用JS的方式就成功了,也不知道为什么。在导师的催促下就总结出以下的几种常用表单提交的方法。

第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功

<script type="text/javascript">
   function validate(obj) {
    if (confirm("提交表单?")) {
      alert(obj.value);
      return true;
    } else {
      alert(obj.value);
      return false;
    }
   }
 </script>
 <body>
  <form action="https://3water.com" onsubmit="return validate(document.getElementByIdx_x('myText'));"> <!—参数的这种写法注意下-->
  
    <input type="text" id="myText"/>
    <input type="submit" value="submit"/>
  
  </form>
</body>

第二种方式:通过button按钮来触发表单提交事件onclick="submitForm();",会忽略掉其他标签中的属性,比如form标签中的onsubmit属性就失效了。这时为了进行表单验证,可以将验证代码放在submitForm();方法中进行验证。

<script type="text/javascript">
   function validate() {
    if (confirm("提交表单?")) {
      return true;
    } else {
      return false;
    }
   }
   
   function submitForm() {
    if (validate()) {
      document.getElementByIdx_x("myForm").submit();
    }
   }
 </script>
 <body>
  <form action="https://3water.com" id="myForm">
  
    <input type="text"/>
    <input type="button" value="submitBtn" onclick="submitForm();"/> <!—也可以使用document.getElementByIdx_x(“该按钮的id”).click();来执行onclick事件-->
  
  </form>
</body>

第三种方式:将onsubmit事件放在submit标签中,而不是form标签中,此时表单验证失效,点击提交按钮表单直接提交

<script type="text/javascript">
   function validate() {
    if (confirm("提交表单?")) {
      return true;
    } else {
      return false;
    }
   }
 </script>
 <body>
  <form action="https://3water.com">
  
    <input type="text"/>
    <input type="submit" value="submit" onsubmit="return validate()"/>
  
  </form>
</body>

第四种方式:为submit按钮添加上onclick事件,其中该事件用于表单提交的验证,功能类似于在form标签中增加了onsubmit事件一样

<script type="text/javascript">
   function validate() {
    if (confirm("提交表单?")) {
      return true;
    } else {
      return false;
    }
   }
 </script>
 <body>
  <form action="https://3water.com">
  
    <input type="text"/>
    <input type="submit" value="submit" onclick="return validate()"/>
  
  </form>
</body>

第五种方式:

<body>
  <form action="https://3water.com" id="myForm">
  
  <input type="text"/>
  <input type="button" value="submitBtn" id="myBtn"/>
  
  </form>
 </body>
 
  <script type="text/javascript">
  
   function validate() {
      if (confirm("提交表单?")) {
        return true;
      } else {
        return false;
      }
}

通过button按钮来触发表单提交事件onclick="submitForm();",会忽略掉其他标签中的属性,比如form标签中的onsubmit属性就失效了。这时为了进行表单验证,可以将验证代码放在submitForm();方法中进行验证

function submitForm() {
      if (validate()) {
        document.getElementByIdx_x("myForm").submit();
      }
   }
  
   document.getElementByIdx_x("myBtn").onclick = submitForm;
</script>

以上这篇利用JS提交表单的几种方法和验证(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQUERY THICKBOX弹出层插件
Aug 30 Javascript
js 多浏览器分别判断代码
Apr 01 Javascript
jQuery ajax cache缓存问题
Jul 01 Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
Aug 25 Javascript
Vue侧滑菜单组件——DrawerLayout
Dec 18 Javascript
浅谈Vue数据绑定的原理
Jan 08 Javascript
解决vue axios的封装 请求状态的错误提示问题
Sep 25 Javascript
如何使用Jquery动态生成二级选项列表
Feb 06 jQuery
一文读懂vue动态属性数据绑定(v-bind指令)
Jul 20 Javascript
小程序实现点击tab切换左右滑动
Nov 16 Javascript
javascript实现拼图游戏
Jan 29 Javascript
jQuery中常用动画效果函数(日常整理)
Sep 17 #Javascript
js方法数据验证的简单实例
Sep 17 #Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
Sep 17 #Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
Sep 17 #Javascript
最全面的JS倒计时代码
Sep 17 #Javascript
jQuery检查元素存在性(推荐)
Sep 17 #Javascript
用jquery获取自定义的标签属性的值简单实例
Sep 17 #Javascript
You might like
编译问题
2006/10/09 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
php通过字符串调用函数示例
2014/03/02 PHP
CodeIgniter实现更改view文件夹路径的方法
2014/07/04 PHP
优化WordPress中文章与评论的时间显示
2016/01/12 PHP
CI配置多数据库访问的方法
2016/03/28 PHP
PHP 信号管理知识整理汇总
2017/02/19 PHP
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
jquery跟js初始化加载的多种方法及区别介绍
2014/04/02 Javascript
jQuery+css实现的时钟效果(兼容各浏览器)
2016/01/27 Javascript
复杂的javascript窗口分帧解析
2016/02/19 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
javacript获取当前屏幕大小
2016/06/04 Javascript
jquery轮播的实现方式 附完整实例
2016/07/28 Javascript
Javascript的this用法
2017/01/16 Javascript
hammer.js实现图片手势放大效果
2017/08/29 Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
2019/09/13 Javascript
JS实现iframe中子父页面跨域通讯的方法分析
2020/03/10 Javascript
vue父子组件间引用之$parent、$children
2020/05/20 Javascript
js实现弹幕飞机效果
2020/08/27 Javascript
[09:47]2018DOTA2亚洲邀请赛4.5SOLO赛 No[o]ne vs Sumail
2018/04/06 DOTA
彻彻底底地理解Python中的编码问题
2018/10/15 Python
celery4+django2定时任务的实现代码
2018/12/23 Python
python 标准差计算的实现(std)
2019/07/29 Python
python使用多线程+socket实现端口扫描
2020/05/28 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
HTML5 图片预加载的示例代码
2020/03/25 HTML / CSS
介绍下Java的输入输出流
2014/01/22 面试题
技校生自我鉴定范文
2013/09/26 职场文书
《鸟岛》教学反思
2014/04/26 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
企业安全生产目标责任书
2014/07/23 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
辣妈辣妹观后感
2015/06/10 职场文书
python随机打印成绩排名表
2021/06/23 Python
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript