和单选框一样,许多新手在用 Javascript 验证表单(form)中多选框(checkbox)的值时,都会遇到问题,原因是 checkbox 和普通的文本框在获取值的时候有很大不同,本文介绍了一个较为通用的获取 checkbox 值的方法,希望对新手有用。

--------------------------------------------------------------
点此浏览示例文件
--------------------------------------------------------------

Javascript: <script type="text/javascript"> // 说明: 用 Javascript 验证表单(form)中多选框(checkbox)的值 // 作者: CodeBit.cn ( http://www.CodeBit.cn ) function getCheckboxValue(checkbox) { if (!checkbox.length && checkbox.type.toLowerCase() == 'checkbox') { return (checkbox.checked)?checkbox.value:''; } if (checkbox[0].tagName.toLowerCase() != 'input' || checkbox[0].type.toLowerCase() != 'checkbox') { return ''; } var val = []; var len = checkbox.length; for(i=0; i<len; i++) { if (checkbox[i].checked) { val[val.length] = checkbox[i].value; } } return (val.length)?val:''; } </script>

和 radio 一样,都是 name 相同,值有多个,在获取 checkbox 值的时候,我们不能按照普通文本框 .value 的方式,而是要判断哪个被选中了。

当一组 checkbox 有多个选项时,我们可以通过循环,以 checkbox[i] 的方式判断某个选项是否被选中来返回值,但是当一组 checkbox 只有一个选项时,获取值的方式又有变化,代码中以 (checkbox.checked)?checkbox.value:''; 的方式直接判断是否选中,然后返回对应值。

上面的代码传入的参数是 checkbox 对象,如:

var checkboxTest = document.forms['testForm'].elements['checkboxTest'];
if (getCheckboxValue(checkboxTest) == '')
{ ...... }

根据判断结果执行你想要的操作。

转载于:https://www.cnblogs.com/zerogo/archive/2009/05/10/2209185.html

用 Javascript 验证表单(form)中多选框(checkbox)值相关推荐

  1. layui 实现表单、表格中复选框checkbox的全选功能

    一.layui 实现表单中多选框的全选功能,代码如下: //html页面表单 <form class="layui-form"><div class=" ...

  2. JavaScript验证表单数据,HTML自动验证表单数据是否为空,数字范围

    典型数据验证: a.字段是否为空: b.输入内容是否合法(例如数字字段是否输入了文本,email格式是否正确等) 数据验证时可通过javaScript进行表单验证,也可提交表单,在服务器端验证.通常情 ...

  3. Javascript验证表单身份证号码的合法性

    文章出处: http://dengo.org/archives/941 不少大的游戏注册时都要输入身份证号码,来限制未成年人,配合所谓的反沉迷系统,账号注册环节注重的是快捷,所以身份证验证都不是真实的 ...

  4. JavaScript 验证表单不为空和获取select下拉列表的值和文本

    1.验证表单不为空 var hasform = { "Name": "名字",                 "Id_card": &qu ...

  5. html表单的复选框的值,关于表单:HTML复选框的checked属性的正确值是什么?

    我们都知道如何在HTML中形成一个复选框输入: 我不知道 - 复选复选框的技术正确值是什么? 我看到这些都有效: 答案是无关紧要的吗? 我没有看到证据证明答案在规范中标记为正确: Checkboxes ...

  6. JavaScript验证表单大全

    1. 长度限制 <script> function test()  { if(document.a.b.value.length>50) { alert("不能超过50个字 ...

  7. button 和input 的区别及在表单form中的用法

    先说一下button 和input的定义: <button> 标签定义的是一个按钮 1.在 <button> 元素内部,您可以放置任何内容,比如文本或图像.这是该元素与使用 & ...

  8. 表单form中的submit事件

    onsubmit只能表单上使用,提交表单前会触发, onclick是按钮等控件使用, 用来触发点击事件. 在提交表单前,一般都会进行数据验证,可以选择在submit按钮上的onclick中验证,也可以 ...

  9. Dynamics CRM: 表单(Form)中的显示字段变成只读的几种情况

    有的时候,当我们打开一条记录, 我们会发现这条记录或者记录中的某个字段变成了不可编辑的状态, 但让表单中的显示字段变成只读的情况有很多, 你可以使用JS代码中的setDisabled, 也可以使用系统 ...

最新文章

  1. android view设置按钮颜色_Android 主题换肤技术方案分析
  2. Swfit Array 遍历 map flatMap filter reduce
  3. 性能测试总结(二)---测试流程篇
  4. python公司大部分编码风格_Python编码风格篇:比较运算符-阿里云开发者社区
  5. 【iOS XMPP】使用XMPPFramewok(四):收发消息
  6. C++:new 和 delete
  7. android byte[]与图片的转换
  8. java图片预览上传_Java实现图片上传预览 (使用ajax提交)
  9. mysql8解决区分大小写问题_球磨机“包球”和“饱磨”分不清?点进来快速区分,解决问题...
  10. Java 向量元素的索引值
  11. 关于如何修改ISA server 防火墙并行最大TCP连接数问题和优化ISA 服务器淹没缓解设置
  12. Windows 10 再香,国内超一半用户「死守」停更的 Windows 7
  13. springboot2.x中的AOP机制总结(附带demo)
  14. 25. Element nextSibling 属性
  15. iOS商城demo、音乐播放器、视频通话、自定义搜索、转场动画等源码
  16. js调用数科阅读器_aspx调用js函数
  17. Day77 Java框架 SSH案例_ERP(十一)_CXF框架_红日物流BOS系统_ERP物流信息管理
  18. 又一场“人机大战”?来自AI open无情碾压!
  19. 不同框架接口自动化的优劣
  20. 2022年3月份报告合集(共353份)

热门文章

  1. 信息图形化探索:图形化简历
  2. 如何对建模型数据进行预处理
  3. 目标检测(一)--Objectness算法总体理解,整理及总结
  4. Android NDK开发之 Neon优化
  5. TMS320C55x汇编语言编程
  6. android 中RecyclerView 嵌套了 GridView 的用法
  7. 普通索引和唯一索引,应该怎么选择?
  8. Cmake构建_设置全局编译选项
  9. 详解窗口句柄,进程ID,进程句柄,窗口与进程之间的关系
  10. eclipse中利用hibernate插件,根据数据库表反向生成Javabean