我已设法获取Chosen plugin的所选选项的ID。这是jsfiddle Demo。
现在我不知道如何获得未选择的Id选项。我使用此代码来获取所选选项的ID。
var SelectedIds = $(this).find('option:selected').map(function() {
if ($(this).attr('value') == params.selected)
return $(this).prop('id')
}).get();
alert(SelectedIds);
答案 0 :(得分:4)
取消选择某个选项后,您会收到更改事件,但params
对象具有deselected
属性,您可以像使用selected
一样使用该属性。
我为你演示了一个jsfiddle:http://jsfiddle.net/1eut1c3d/
$("#chosen").chosen().on('change', function(evt, params) {
if (params.selected !== undefined) {
var selectedID = $(this).find('option:selected').map(function() {
if ($(this).attr('value') == params.selected)
return $(this).prop('id')
}).get();
alert("Selected: " + selectedID);
}
if (params.deselected !== undefined) {
var deselectedID = $(this).find('option').not(':selected').map(function() {
if ($(this).attr('value') == params.deselected)
return $(this).prop('id')
}).get();
alert("Deselected: " + deselectedID);
}
});