javascript - 如何使用 jquery 检查复选框?
问题描述
我有三个复选框,我正在尝试实现“全部”和“无”。
<div class="controls col-md-5">
<input id="None" name="None" type="checkbox" value="true" /><input name="None" type="hidden" value="false" />
<label for="None">None</label>
</div>
互联网上说要检查并设置“已检查”属性,就像您期望的那样。
if ($('#None').checked) {
$('#cBox').checked = false;
}
但它不起作用。检查控制台,我可以看到 $('#None').checked 正在返回 'undefined'。
$('#None').attr('checked) 也应该可以工作,但也会返回 'undefined'。
$('#None') 正在工作。我可以展开它,当我选中和取消选中该框时,会看到“已选中”道具正在更新。
更新
$('#None').is(':checked') 有效!
$('#None').attr(':checked') 仍未定义。
现在我只需要在三个框上设置“选中”,但没有任何效果。
$('#None').attr('checked')=true 失败并显示“您无法分配给函数调用。”
$('#None').checked=true 不会失败,但不会改变任何东西。
解决方案
解决方案是仔细查看在控制台中为 $('#None') 打开的节点。
if ($('#None')[0].checked) {
$('#cBox')[0].checked = false;
}
工作得很好。
我继续发布了这个问题,因为答案是如此简单且难以找到。
推荐阅读
- android - Android布局未与顶部对齐
- java - 应用插件:“com.google.secrets_gradle_plugin”版本“0.4”给我一个错误
- vue.js - postcss-svgo:解析 SVG 时出错:属性名称无效
- c# - 如何调用返回 1 行的存储过程?
- javascript - 用JS拖拽图片
- macos - 从 Mac 上的 Visual Studio 访问 Azure SQL 数据库的问题
- laravel - Nova Laravel 显示图像
- python - 如何从字符串中的每一行中删除最后一个逗号?
- python - 如何在 Python / 记忆游戏中隐藏图片并通过按钮重新出现
- c# - 按类 HTML Agility Pack 读取节点内部文本