基于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 相关文章推荐
ASP.NET中使用后端代码注册脚本 生成JQUERY-EASYUI的界面错位的解决方法
Jun 12 Javascript
Package.js  现代化的JavaScript项目make工具
May 23 Javascript
微信小程序 教程之WXML
Oct 18 Javascript
jQuery.datatables.js插件用法及api实例详解
Oct 28 Javascript
js实现界面向原生界面发消息并跳转功能
Nov 22 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
Dec 01 Javascript
解析预加载显示图片艺术
Dec 05 Javascript
详解vue2.0脚手架的webpack 配置文件分析
May 27 Javascript
JS原生轮播图的简单实现(推荐)
Jul 22 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
Feb 05 Javascript
jQuery实现简易聊天框
Feb 08 jQuery
JS时间戳与日期格式互相转换的简单方法示例
Jan 30 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
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
一个简洁实用的PHP缓存类完整实例
2014/07/26 PHP
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
2015/05/25 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
2015/08/21 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
php实现JWT(json web token)鉴权实例详解
2019/11/05 PHP
关于jQuery参考实例2.0 用jQuery选择元素
2013/04/07 Javascript
js获取触发事件元素在整个网页中的绝对坐标(示例代码)
2013/12/13 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
2017/02/08 Javascript
vue.js vue-router如何实现无效路由(404)的友好提示
2017/12/20 Javascript
浅谈Node框架接入ELK实践总结
2019/02/22 Javascript
javascript实现简易聊天室
2019/07/12 Javascript
js中switch语句的学习笔记
2020/03/25 Javascript
python读写ini文件示例(python读写文件)
2014/03/25 Python
Python中列表、字典、元组、集合数据结构整理
2014/11/20 Python
python数据处理实战(必看篇)
2017/06/11 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
浅谈Django中view对数据库的调用方法
2019/07/18 Python
python反转列表的三种方式解析
2019/11/08 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
CSS3实现瀑布流布局与无限加载图片相册的实例代码
2016/12/22 HTML / CSS
值得收藏的HTML5资源(学习html5的朋友可以收藏下)
2010/07/20 HTML / CSS
AmazeUI 列表的实现示例
2020/08/17 HTML / CSS
Omio葡萄牙:全欧洲低价大巴、火车和航班搜索和比价
2019/02/09 全球购物
国际领先的在线时尚服装和配饰店:DressLily
2019/03/03 全球购物
财务出纳岗位职责
2014/02/03 职场文书
市场营销专业求职信
2014/06/17 职场文书
医学专业毕业生求职信
2014/06/20 职场文书
党的群众路线对照检查材料(个人)
2014/09/24 职场文书
王兆力在市委党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
党建工作目标管理责任书
2015/01/29 职场文书
投诉信范文
2015/07/02 职场文书
2015年物业管理员工工作总结
2015/10/15 职场文书
学校体育节班级口号
2015/12/25 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js