繁体   English   中英

即使未选中也获取复选框值?

[英]Get checkbox value even if not checked?

有没有一种方法可以获取所有复选框的值,即使未选中它们也是如此?

HTML:

<input type="checkbox" name="color[]" value="1"/>
<input type="checkbox" name="color[]" value="2"/>
...

JS:

$("input[name='color[]']").serialize();

类似于上面的内容,但是即使没有选中这些值,我也想要它们。 也许我需要在序列化之前先将它们放入数组中?

  1. 克隆它们以避免更改复选框的原始状态
  2. 将克隆的项目设置为true
  3. 连载

 document.write($('input[name="color[]"]').clone().prop('checked', true).serialize()); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> <input type="checkbox" name="color[]" value="1" /> <input type="checkbox" name="color[]" value="2" /> 

简单的解决方案似乎丢失了,所以:

 var serializedValues = $('input[name="color[]"]').map(function(i, e) { return encodeURIComponent(e.name) + "=" + encodeURIComponent(e.value); }).get().join("&"); snippet.log(serializedValues); 
 <input type="checkbox" name="color[]" value="1" /> <input type="checkbox" name="color[]" value="2" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> <!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 --> <script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script> 

假设您确实希望通过seralize获得相同的输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM