基于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 获取页面的高度及滚动条的位置的代码
May 06 Javascript
基于jquery实现的可以编辑选择的下拉框的代码
Nov 19 Javascript
基于JQuery的asp.net树实现代码
Nov 30 Javascript
JavaScript中setInterval的用法总结
Nov 20 Javascript
jquery控制显示服务器生成的图片流
Aug 04 Javascript
深入浅析JavaScript函数前面的加号和叹号
Jul 09 Javascript
JS获取字符对应的ASCII码实例
Sep 10 Javascript
Three.js实现浏览器变动时进行自适应的方法
Sep 26 Javascript
Node.JS段点续传:Nginx配置文件分段下载功能的实现方法
Mar 12 Javascript
基于angular6.0实现的一个组件懒加载功能示例
Apr 12 Javascript
vue-cli3全面配置详解
Nov 14 Javascript
Vue中多元素过渡特效的解决方案
Feb 05 Javascript
使用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
Terran建筑一览
2020/03/14 星际争霸
php实现从ftp服务器上下载文件树到本地电脑的程序
2009/02/10 PHP
php 魔术方法使用说明
2009/10/20 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
php关键字仅替换一次的实现函数
2015/10/29 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
再谈Yii Framework框架中的事件event原理与应用
2020/04/07 PHP
js textarea自动增高并隐藏滚动条
2009/12/16 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
javascript + jquery实现定时修改文章标题
2014/03/19 Javascript
jQuery中prepend()方法用法实例
2014/12/25 Javascript
JavaScript字符串删除重复字符的方法
2015/12/25 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
微信小程序教程系列之视图层的条件渲染(10)
2017/04/19 Javascript
微信小程序分包加载代码实现方法详解
2019/09/23 Javascript
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
[02:44]完美大师赛主赛事淘汰赛第二日观众采访
2017/11/24 DOTA
python查询sqlite数据表的方法
2015/05/08 Python
Python中django学习心得
2017/12/06 Python
python的unittest测试类代码实例
2017/12/07 Python
python实现基于朴素贝叶斯的垃圾分类算法
2019/07/09 Python
Python中关于浮点数的冷知识
2019/09/22 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
Python如何在单元测试中给对象打补丁
2020/08/03 Python
Python 用__new__方法实现单例的操作
2020/12/11 Python
CSS3 特效范例整理
2011/08/22 HTML / CSS
KIKO比利时官网:意大利彩妆品牌
2017/07/23 全球购物
C语言面试题
2015/10/30 面试题
财务管理专业求职信
2014/06/11 职场文书
单位租房协议书范本
2014/12/04 职场文书
幼儿园端午节活动总结
2015/05/05 职场文书
小学班主任研修日志
2015/11/13 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
Python趣味挑战之实现简易版音乐播放器
2021/05/28 Python