我有几个名为 etapes
的复选框。我想获取所有已检查的 etapes
的值并将其存储在单个字符串中。
所以尝试了这个:
$('[name="etapes"]:checked').each(function() {
indexer = indexer + 1;
if (indexer == 1) selectedEtapes = $(this).val();
else selectedEtapes = selectedEtapes + "," + $(this).val();
});
但是没有成功。那么我该如何解决这个问题呢?
最佳答案
更简单的解决方案是使用 jQuery.map
var mapped = $('[name="etapes"]:checked').map(function() {
return this.value;
}).get();
console.log(mapped.join(','));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input type="checkbox" name="etapes" value="Ouverte1" checked>
<input type="checkbox" name="etapes" value="Ouverte2">
<input type="checkbox" name="etapes" value="Ouverte3" checked>
修复您的代码:
您从未接受过index
参数,
var selectedEtapes = '';
$('[name="etapes"]:checked').each(function(index) {
if (!index) selectedEtapes += $(this).val();
else selectedEtapes += "," + $(this).val();
});
关于javascript - 使用jquery获取复选框列表的选中值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39902231/