我想获得带有多个选项的下拉列表的值。我想使用jquery获取选择而不是选择下拉列表的值.Anybody帮助我?
我的代码如下:
<select name="select" multiple id="select">
<option value="aa">aa</option>
<option value="bb">bb</option>
</select>
<BR><BR>
<input type="button" value="Print All" onClick="printAll()">
<script>
function printAll()
{
var selectedValues = $("#select").val();
alert(selectedValues);
}
</script>
答案 0 :(得分:0)
要全部未选中:
$('#select option:not(:selected)').map(function() { return $(this).val(); });
并获得选择:
$('#select option:selected').map(function() { return $(this).val(); });;
答案 1 :(得分:0)
我认为你需要这个。检查这个DEMO
HTML:
<select name="select" multiple id="select" >
<option value="aa">aa</option>
<option value="bb">bb</option>
<option value="cc">bb</option>
<option value="dd">bb</option>
</select>
<input id="printAll"type="button" value="Print All">
jQuery:
$("#printAll").click(function(){
$('#select option').not(":selected").each(function(){
alert("unselected :"+$(this).val());
});
});
答案 2 :(得分:0)
获取所有值(选中和未选中):
$('#printAll').on('click', function (e) {
e.preventDefault();
var allValues = $('select[multiple] option').map(function () {
return this.value;
}).get();
console.log(allValues); // ['aa','bb']
});
参考文献:
答案 3 :(得分:0)
你问过: "I want to get selected and not selected value "
一种很好的方法: jsBin demo
var arr = [[],[]];
$('#select option').val(function(i,v){
arr[+this.selected].push(v);
});
alert( "Unselected: "+ arr[0] +"\n Selected: "+ arr[1] );