如何从所选的多选插件中获取最后选择的项目

时间:2014-07-29 01:59:08

标签: javascript jquery jquery-chosen

正如问题所说,我想知道如何从所选的多选插件中获取最后一个选定的项目值。

到目前为止,我有这个:

$(document).ready(function() {
    $('#id').chosen().on('change', function(evt, param) {
            var id1 = this.value;
            var id2 = $("#id").chosen().val();
            var id3 = $('#id', this).filter(':selected:last').val();
            var id4 = $(evt.target).text();

            alert('IDs:' +id1+'-'+id2+'-'+id3+'-'+id4);
    });
});

这是输出:

2 - undefined - undefined - [all the values]

第一个答案是正确的(我选择了第二个值)。

但如果我后来选择第3个值或者之前我选择的第3个值,它会一直显示我选择的第一个值。但是,如果我选择一个位于第一个之前的值,它就能完美地运作,我不知道为什么。

任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

修改

这应该有效:

$('option').click(function(){
    var option = $(this);
    var str = "";
    $("#id option:selected" ).each(function() {
        if (option.val()==$(this).val()){
            alert (option.val());
        }
    });
});

请参阅此jsfiddle