这是我检查选中了哪些复选框的功能。
function updateTagChecked() {
var list_tag_selected = [];//to store the value of checkboxs selected.
$('input[name=tag]:checked').each(function() {
list_tag_selected.push($(this).val());
});
$('#tag_checked').val(list_tag_selected.join("&"))//Append this list to hidden field
}
//When are checkbox are click?
$(function() {
$('#collapse_option input').click(updateTagChecked);
updateTagChecked();
});
我想为多选
做同样的事情<div id collapse_option>
<li><label for="id_city">City:</label>
<select multiple="multiple" name="city" id="id_city">
<option value="1">Phnom Penh</option>
<option value="2">Takeo</option>
<option value="3">Kampot</option>
<option value="4">Kampongthom</option>
<option value="5">Siemreip</option>
<option value="6">pursat</option>
<option value="7">preyveng</option>
</select></li>
</div>
<input type="hidden" id="store_multiselected" name="store_multiselected" value=""/>
在多选中我们可以这样做。我想在隐藏字段中为多选中的每个选中存储值,如上所述。
答案 0 :(得分:1)
是的,只需使用选择器select[name=city] option[selected]
代替input[name=tag]:checked
。
答案 1 :(得分:1)
当它是多选时,val()已经是一个列表:
function updateTagChecked() {
var list_tag_selected = $('#id_city').val(); // first pull values from multiselect
$('input[name=tag]:checked').each(function() {
list_tag_selected.push($(this).val()); // then from other checkboxes
});
//Append this list to hidden field
$('#tag_checked').val(list_tag_selected.join("&"));
}
//When are checkbox are click?
$(function() {
$('#collapse_option input').click(updateTagChecked);
updateTagChecked();
});