$(document).ready(function() {
$('input[type = "checkbox"]').change(function() { //when a checkbox is checked
var nvalues = $('input[type="checkbox"]:checked').map(function() {
return this.value;
}).get();
if (nvalues.length > 0) {
var fin = nvalues.value;
$('#here').html(fin);
} else {
$('#here').html("WTF");
}
});
});
这里我使用map将选中的值存储为数组,但输出为空。
答案 0 :(得分:2)
请参阅代码中的注释:
$(document).ready(function() {
$(':checkbox').change(function() { // :checkbox pseudo-selector selects all checkboxes
var nvalues = []; // Initialize empty array
$(':checkbox:checked').each(function() { // For all checked checkboxes
nvalues.push($(this).val()); // Push current checkbox value in array
});
if (nvalues.length > 0) {
$('#here').html(nvalues.toString()); // Array to string conversion
} else {
$('#here').html("WTF");
}
});
});
答案 1 :(得分:2)
get()
方法会返回一组值,使用 join()
加入它们,然后显示
$(document).ready(function() {
$('input[type = "checkbox"]').change(function() { //when a checkbox is checked
var nvalues = $('input[type="checkbox"]:checked').map(function() {
return this.value;
}).get();
if (nvalues.length > 0) {
var fin = nvalues.join(',');
$('#here').html(fin);
} else {
$('#here').html("WTF");
}
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input type="checkbox" value="1"/>
<input type="checkbox" value="2"/>
<input type="checkbox" value="3"/>
<input type="checkbox" value="4"/>
<input type="checkbox" value="5"/>
<input type="checkbox" value="6"/>
<div id="here"></div>
&#13;
答案 2 :(得分:1)
尝试:
$(document).ready(function() {
$('input[type = "checkbox"]').change(function() { //when a checkbox is checked
var nvalues = $('input[type="checkbox"]:checked').map(function() {
return $(this).val();
}).get();
if (nvalues.length > 0) {
var fin = nvalues[0];
$('#here').html(fin);
} else {
$('#here').html("error");
}
});
});
答案 3 :(得分:1)
像value
这样的数组中没有属性:
var fin = nvalues.value;
尝试加入:
var fin = nvalues.join(','); //gives csv
OR
var fin = nvalues.join(' ');//spaces