基于JavaScript实现带数据验证和复选框的表单提交


Posted in Javascript onAugust 23, 2017

实现:

1.用户至少选中某项,即表示选中该行,同时该行的数据验证通过,表单提交;否则,不提交。

html

<!DOCTYPE html> 
<html lang="en"> 
<head> 
 <meta charset="UTF-8"> 
 <title>带数据验证和复选框的表单提交</title> 
 <script src="../commonJqery/jquery-3.0.0.js" type="text/javascript"></script> 
 <style type="text/css"> 
  table { 
   border-collapse: collapse; 
  } 
  td,th { 
   width: 40px; 
   height: 100px; 
   border:1px solid #000; 
  } 
  table tbody tr:hover { 
   background-color: red; 
  } 
  table tbody tr:not(:first-child):hover {background-color: #666; 
  } 
  td input[name='number']{ 
   width: 100px; 
  } 
 </style> 
</head> 
<body> 
 <form action="http://www.baidu.com" id="order_shopping" name="order_shopping" method="get" onsubmit="return checkShopping();"> 
  <table id="table" class="fl"> 
   <thead> 
    <tr> 
     <th>商品名</th> 
     <th>单价</th> 
     <th>购买数量</th> 
     <th><input id="both" type="checkbox" name="both" autocomplete="off"></th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr> 
     <td>香蕉</td> 
     <td>100</td> 
     <td><input type="text" name="number" autocomplete="off" placeholder="请输入数量"></td> 
     <td> 
      <input type="checkbox" name="choice" autocomplete="off"> 
     </td> 
    </tr> 
    <tr> 
     <td>苹果</td> 
     <td>100</td> 
     <td><input type="text" name="number" autocomplete="off" placeholder="请输入数量"></td> 
     <td> 
      <input type="checkbox" name="choice" autocomplete="off"> 
     </td> 
    </tr> 
   </tbody> 
  </table> 
  <input type="submit" id="add_shopping" value="添加购物车"/> 
 </form> 
 <p id="msg"></p> 
</body> 
</html>

js:

<script type="text/javascript"> 
  $(function(){ 
   //全选 
   $("input[name='both']").click(function(){ 
    var $isSelected = $(this).is(":checked"); 
    for(var i = 0;i<$("input[name='choice']").length;i++){ 
     $("input[name='choice']")[i].checked = $isSelected; 
     } 
    }) 
  }); 
  // 输入正确,且有选中该行复选框才提交 
  function checkShopping(){ 
   $("#msg").html(''); 
   var $checkbox = $("input[name='choice']"); 
   var reg = /^[1-9]\d*$/; 
   var $number = ""; 
   var isInteger = false;//记录数字是否正确 
   var moreOne = false;//选择复选框个数 
   $checkbox.each(function(){ 
    if($(this).is(":checked")){ 
     $number = $(this).parent().prev().children().val(); 
     if(reg.test($number)){ 
      isInteger = true; 
      moreOne = true; 
     }else{ 
      $("#msg").html('提示:输入数量必须为正整数'); 
      isInteger = false; 
     } 
    } 
   }) 
   if(isInteger && moreOne){ 
    return true; 
   }else if(!moreOne){ 
    $("#msg").html('提示:至少选择一条信息'); 
    return false; 
   }else{ 
    return false; 
   } 
  } 
</script>

总结

以上所述是小编给大家介绍的基于JavaScript实现带数据验证和复选框的表单提交,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
如何用javascript判断录入的日期是否合法
Jan 08 Javascript
XMLHTTP 乱码的解决方法(UTF8,GB2312 编码 解码)
Jan 12 Javascript
JS实现的省份级联实例代码
Jun 24 Javascript
浅谈JavaScript实现面向对象中的类
Dec 09 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
Jul 20 Javascript
jQuery.deferred对象使用详解
Mar 18 Javascript
微信小程序中的swiper组件详解
Apr 14 Javascript
jquery 禁止鼠标右键并监听右键事件
Apr 27 jQuery
js 判断一个数字是不是2的n次方幂的实例
Nov 26 Javascript
vue-router源码之history类的浅析
May 21 Javascript
JS document form表单元素操作完整示例
Jan 13 Javascript
Vue3.0写自定义指令的简单步骤记录
Jun 27 Vue.js
使用JS组件实现带ToolTip验证框的实例代码
Aug 23 #Javascript
利用Vue实现移动端图片轮播组件的方法实例
Aug 23 #Javascript
详解AngularJS跨页面传值(ui-router)
Aug 23 #Javascript
vue中页面跳转拦截器的实现方法
Aug 23 #Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
Aug 23 #jQuery
Angular2+国际化方案(ngx-translate)的示例代码
Aug 23 #Javascript
JS实现问卷星自动填问卷脚本并在两秒自动提交功能
Jun 17 #Javascript
You might like
php array_walk() 数组函数
2011/07/12 PHP
模板引擎smarty工作原理以及使用示例
2014/05/25 PHP
tp5框架使用composer实现日志记录功能示例
2019/01/10 PHP
Laravel核心解读之异常处理的实践过程
2019/02/24 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
浅谈laravel-admin的sortable和orderby使用问题
2019/10/03 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
javascript中的nextSibling使用陷(da)阱(keng)
2014/05/05 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
2016/09/17 Javascript
Angular2平滑升级到Angular4的步骤详解
2017/03/29 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
JavaScript之Canvas_动力节点Java学院整理
2017/07/04 Javascript
React Native中Navigator的使用方法示例
2017/10/13 Javascript
基于vue-cli配置lib-flexible + rem实现移动端自适应
2017/12/26 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
解读! Python在人工智能中的作用
2017/11/14 Python
Python文件操作基本流程代码实例
2017/12/11 Python
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
解决Mac安装scrapy失败的问题
2018/06/13 Python
python 模拟登陆github的示例
2020/12/04 Python
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
饿了么订餐官网:外卖、网上订餐
2019/06/28 全球购物
2013年大学生的自我鉴定
2013/10/24 职场文书
保护环境的建议书
2014/03/12 职场文书
《青海高原一株柳》教学反思
2014/04/25 职场文书
党员对照检查剖析材料
2014/10/13 职场文书
收款委托书
2014/10/14 职场文书
道路交通事故人身损害赔偿协议书
2014/11/19 职场文书
运动会开幕式主持词
2015/07/01 职场文书
大学生受助感言
2015/08/01 职场文书
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS