首先需要获得到所有的input框,并声明一个空对象来存放,遍历所有的复选框,将他们中选中的放入对象,并设置键值为true,然后执行checkFalseValues(result)函数
javascript">function hideItem() {let checkboxes = $('.setting_box input[type="checkbox"]');let result = {};checkboxes.each(function () {let name = $(this).attr("name");let checked = $(this).prop("checked");result[name] = checked;});checkFalseValues(result);
}
利用for in循环result中的所有,将其转换为字符串赋值给一个变量,将所有的项目全部都显示,同时判断当其存在且其中的值为FALSE的时候,将对应的项消失掉,一开始因为拼接的问题一直获取不到,后续更改了一下拼接即可
javascript">function checkFalseValues(result) {for (let k in result) {let elements = k.toString();$(`${`.` + elements}`).css("display", "block");if (result.hasOwnProperty(k) && result[k] === false) {let elements = k.toString();$(`${`.` + elements}`).css("display", "none");}}
}