近日做一个关于JQuery表单验证,有一个比较奇葩的要求,即checkbox是为必填项,textbox不是必填的。

而checkbox与textbox又是相关的,填写了textbox,则其上方的checkbox即相当于勾选。在使用中,用户很容易只注意到textbox,忽视checkbox,而不勾选,造成验证不通过。

所以想通过程序,在验证之前先判断textbox是否有值,如果有值,则自动勾选checkbox,再进行验证。

最初的代码如下:

if ($("#ZYAreaBC").val() != null) {
if ($("#ZYAreaBC").val() != "") {
$("#ChkSYBC").attr("checked", true);
}
}
if ($("#ZYElseBC").val() != null) {
if ($("#ZYElseBC").val() != "") {
$("#ChkHBBC").attr("checked", true);
}
}

调试过程中,出现很奇怪的异常,该项不一定通过验证,且checkbox的状态一直是未选中的状态。但是再调试过程中查看checkbox的值,是有值的。

本以为是JQuery无法验证通过代码设置的值,再谷歌不正常的情况下到处找资料,终于发现是checkbox设置值的问题,JQuery1.6之后,使用如下代码设置

checkbox的的选中与否

$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);

参考如下帖子:http://stackoverflow.com/questions/426258/checking-a-checkbox-with-jquery

修改代码,修改后调试正常通过

if ($("#ZYAreaBC").val() != null) {
if ($("#ZYAreaBC").val() != "") {
$("#ChkSYBC").prop('checked', true); ;
}
}
if ($("#ZYElseBC").val() != null) {
if ($("#ZYElseBC").val() != "") {
$("#ChkHBBC").prop('checked', true); ;
}
}

最新文章

  1. ios 返回指定导航控制器
  2. 转载--CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡
  3. 数据结构Java实现05----栈:顺序栈和链式堆栈
  4. JavaScript关闭窗口的同时打开新页面的方法
  5. UploadifyAPI-上传插件属性和方法介绍
  6. Java中的自动拆箱装箱(Autoboxing&Unboxing)
  7. codeforces 609F. Frogs and mosquitoes 二分+线段树
  8. 022 component(组件)关联映射
  9. 使用 FLASH DATABASE 恢复误删除的用户
  10. 11.Flask钩子函数
  11. Linux常用命令之-删除文件
  12. 封装qq分享静态库到cocopod
  13. python将文本写入剪切板
  14. fg、bg、jobs、&、nohup、ctrl+z、ctrl+c 命令
  15. Linux常用命令大全(转)
  16. L265 - 5 questions to ask yourself before you ask for a raise or promotion
  17. ActiveMq unsupported major.minor version 52.0
  18. Session问题-一个部门A登录后未注销另一个部门B再登录,以B的身份操作A的成员
  19. java如何写自己的native方法实现调用本地的c++库?
  20. 域名DNS解析说明

热门文章

  1. SQLServer两张表筛选相同数据和不同数据
  2. kylin的安装与配置
  3. cf #365b 巧妙的统计
  4. Android 编程下的自定义 xmlns
  5. 让一个div在不同的显示器中永远居中
  6. Swift3.0语言教程获取C字符串
  7. POJ 2201 Cartesian Tree ——笛卡尔树
  8. js总结1
  9. spring boot 打包成jar 包在发布到服务器上
  10. maven工程下 读取resource下配置文件