Javascript 基于二进制表示的隐藏字段(反之亦然)更新复选框数组
我的表格上有一组复选框,它们属于一起。复选框的数量是固定的,比如说8。还有一个隐藏的输入字段。当页面加载时,我希望复选框更新,以便它们显示隐藏值的二进制表示形式(应该是无符号整数) 例如,加载时,隐藏字段的值为123,因此复选框字段如下所示: [][X][X][X][X][X][X] 如果复选框被更改,则应更新隐藏值 例如,单击最后一个复选框(并因此关闭)后: [][X][X][X][X][[X][] ->隐藏值:122Javascript 基于二进制表示的隐藏字段(反之亦然)更新复选框数组,javascript,html,jquery,Javascript,Html,Jquery,我的表格上有一组复选框,它们属于一起。复选框的数量是固定的,比如说8。还有一个隐藏的输入字段。当页面加载时,我希望复选框更新,以便它们显示隐藏值的二进制表示形式(应该是无符号整数) 例如,加载时,隐藏字段的值为123,因此复选框字段如下所示: [][X][X][X][X][X][X] 如果复选框被更改,则应更新隐藏值 例如,单击最后一个复选框(并因此关闭)后: [][X][X][X][X][[X][] ->隐藏值:122 <input name="test[0]" ty
<input name="test[0]" type="checkbox" value="1">
<input name="test[1]" type="checkbox" value="1">
<input name="test[2]" type="checkbox" value="1">
<input name="test[3]" type="checkbox" value="1">
<input name="test[4]" type="checkbox" value="1">
<input name="test[5]" type="checkbox" value="1">
<input name="test[6]" type="checkbox" value="1">
<input name="test[7]" type="checkbox" value="1">
<input id="realValue" type="hidden" value="123">
其思想是,我可以在数据库中的一个int字段中简单地保存一整套(非常相似的)二进制选项,而无需创建大量布尔字段
我想有一个JS库可以做到这一点,但我找不到任何东西。。有人有简单的解决方案吗?您可以使用按位and(
&
)依次检查每个位,您可以通过在1=0处应用按位XOR(^
)在特定索引处切换位;我——){
输入[i]。选中=curr&1==1;
curr>>=1;
}
}
changeVal();
inputs.forEach((输入,索引)=>input.addEventListener('change',函数(e){
realVal.value=+realVal.value^(1这听起来像是一个数字,一旦提交了复选框,计算服务器端就会简单得多。