web-dev-qa-db-ja.com

選択されたJqueryプラグイン-選択された値の取得

選択した複数選択ボックスから選択した値を取得するにはどうすればよいですか?

62
Aakash Shah

通常のinput/select/etcからのように...:

$("form.my-form .chosen-select").val()
66
Sergii
$("#select-id").chosen().val()
85
Ben Truby

これは私のために働いた

$(".chzn-select").chosen({

     disable_search_threshold: 10

}).change(function(event){

     if(event.target == this){
        alert($(this).val());
     }

});
15
Arvind
$("#select-id").chosen().val()

これは正しい答えです、私が試しましたが、渡される値は「、」で区切られた値です

11
user3423551

オプションをクリックして選択した値のみを取得する場合は、次の操作を実行できます。

$('.chosen-select').on('change', function(evt, params) {
    var selectedValue = params.selected;
    console.log(selectedValue);
});

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
}

Chosen doc では、ページの下部にあるイベントのトリガーに関するセクションで、「選択された元の選択フィールドでいくつかの標準およびカスタムイベントがトリガーされる」と表示されます。これらの標準イベントの1つは変更イベントであるため、標準の選択入力の場合と同じように使用できます。必要に応じて、選択されたクラスをセレクタとして使用することに煩わされる必要はありません。 (changeイベントの場合、つまり、他のイベントはしばしば異なる問題です。)

5
BobRodes

選択したオプションのテキストを取得する場合(選択した値の表示を選択)

 $("#select-id").chosen().find("option:selected" ).text();
1
Hoàng Vũ Tgtt

このソリューションは私のために働いた

var ar = [];
$('#id option:selected').each(function(index,valor){
    ar.Push(valor.value);
});
console.log(ar);

<option>タグと対応するvalue属性を必ず用意してください。それが役に立てば幸い。

1
Osogtulak

IDでターゲティングすると問題が発生すると考えられます。選択されたIDは元のselectから新しく作成されたdivにIDをコピーし、同じ(現在は一意ではない)IDの2つの要素を残します現在のページ。

IDによる選択をターゲットにする場合、selectに固有のセレクターを使用します。

$( 'select#yourID' ).on( 'change', function() {
    console.log( $( this ).val() );
} );

...の代わりに...

$( '#yourID' ).on( 'change', function() {
    console.log( $( this ).val() );
} );

これは、選択されたアイテムがマルチモードであっても、選択されたアイテムをミラーリングして元の(非表示になっている)select要素に戻すために機能します。

(アプリケーションで別の方向に進むことにした場合は、Chosenを使用しても使用しなくても機能し続けます。)

0