如何从已选多选框中获取所选值?
如何从已选多选框中获取所选值?
$("#select-id").chosen().val()
TypeError: $(...).chosen.val 不是一个函数
。 - Luckyval()
得到了它。这个错误在控制台中显示为 chosen is not a valid function
。但是我的其他 chosen
API 工作正常。 - Lucky()
。一组在 chosen
后面,另一组在 val
后面。尝试使用 $(...).chosen().val()
。 - WhiteHotLoveTiger就像从任何普通的输入框、下拉菜单等获取值一样:
$("form.my-form .chosen-select").val()
这对我有用
$(".chzn-select").chosen({
disable_search_threshold: 10
}).change(function(event){
if(event.target == this){
alert($(this).val());
}
});
$("#select-id").chosen().val()
这是正确的答案,我尝试过,传递的值是由“,”分隔的值
chosen
中选择了2个选项时,我最终会得到变量的2个副本,因此会得到类似于这样的结果:var[] = 111; var[] = 3348;
- kneidels$('.chosen-select').on('change', function(evt, params) {
var selectedValue = params.selected;
console.log(selectedValue);
});
.chosen-select
类。 - BobRodes截至2016年,您可以比任何已有的答案更简单地完成此操作:
$('#myChosenBox').val();
其中"myChosenBox"是原始选择输入框的id。或者,在更改事件中:
$('#myChosenBox').on('change', function(e, params) {
alert(e.target.value); // OR
alert(this.value); // OR
alert(params.selected); // also in Panagiotis Kousaris' answer
}
$("#select-id").chosen().find("option:selected" ).text();
$("#select-id").chosen().find("option:selected" ).attr('somArbitraryAttributeNameFromOptionElement')
- uchuugakavar ar = [];
$('#id option:selected').each(function(index,valor){
ar.push(valor.value);
});
console.log(ar);
请确保您的<option>
标签与它们对应的value
属性一致。
希望能帮到你。
我认为问题出现在通过ID进行目标定位时,因为Chosen会将原始select
的ID复制到其新创建的div
上,这样就会在当前页面上留下两个具有相同(现在不唯一)ID的元素。
当通过ID定位Chosen时,请使用特定于select
的选择器:
$( 'select#yourID' ).on( 'change', function() {
console.log( $( this ).val() );
} );
...而不是...
$( '#yourID' ).on( 'change', function() {
console.log( $( this ).val() );
} );
select
元素,即使是在多模式下也是如此。