javascript - 满足所有条件后如何运行函数
问题描述
我正在尝试为我打算提供的包制作一个带有单选按钮和复选框的联系表格。第一个收音机是完整的包。第二个单选按钮显示将完整包分解为单个选项的复选框。
我想要实现的是当所有复选框都被选中时,第一个收音机被选中并且所有复选框都未被选中并被隐藏。我设法让这个功能用一点点工作
var radio1 = document.getElementbyID('radio1');
var radio2 = document.getElementbyID('radio2');
var checkgroup = document.getElementbyID('checkgroup');
var check1 = document.getElementbyID('check1');
var check2 = document.getElementbyID('check2');
var check3 = document.getElementbyID('check3');
var check4 = document.getElementbyID('check4');
$(document).change(function () {
if (radio2.checked) {
checkgroup.style.display = "block";
} else {
checkgroup.style.display = "none";
}
});
$(document).change(function () {
if ((check1&&check2&&check3&&check4).checked) {
check1.checked = false;
check2.checked = false;
check3.checked = false;
check4.checked = false;
checkgroup.style.display = "none";
radio1.checked = true;
}
});
每当我选中条件中最后一个复选框if()
(仅最后一个,而不是其他复选框)时,它都会执行错过重点的功能。我的目标:如果全部选中,则执行功能(取消选中所有,隐藏复选框,切换回 Radio1)。如果任何 3 被选中,则不会发生任何事情。我觉得我错过了什么,我只是不知道是什么。
解决方案
更改if ((check1&&check2&&check3&&check4).checked)
为if (check1.checked && check2.checked && check3.checked && check4.checked)
我很困惑它甚至有点工作,因为你本质上是在 Javascript 对象之间使用 && 而不是(布尔)变量
推荐阅读
- c - C 向上取整浮点数
- webpack - 在 Rails 6 中使用 Webpack 从 node_modules 解析 SCSS 中的相对图像链接
- android - 使用 COLOR_FormatYUV420Flexible 时的预期 YUV 格式
- java - java.lang.AbstractMethodError: org.postgresql.jdbc3.Jdbc3Connection.isValid(I)Z
- awk - 如何从 xmgrace 文件中 grep 一些标签,然后在 gnuplot 脚本中将它们用作刻度标签和箭头位置
- c# - 如何使用 C# 在 Windows 10 中添加 IP 地址
- amazon-web-services - 无法通过 terraform 起草有效的 json 以用作存储桶策略
- reactjs - useState 没有重新渲染
- python - 列出数据框列中每一行的拼接
- html - 如何在保持纵横比的同时使任意 SVG 扩展到其父容器?