JqG​​ridでselect2ドロップダウンの選択値を変更するにはどうすればよいですか? 質問する

JqG​​ridでselect2ドロップダウンの選択値を変更するにはどうすればよいですか? 質問する

私はオレグのselect2 デモしかし、ドロップダウン メニューで現在選択されている値を変更できるかどうか疑問に思っています。

たとえば、ロードされた 4 つの値が で、"Any", "Fruit", "Vegetable", "Meat"ドロップダウン リストのデフォルトが の場合、 JqGrid イベントで"Any"これを に変更するにはどうすればよいでしょうか。"Fruit"loadComplete

これは可能ですか?

ベストアンサー1

select2 バージョン >= 4.0.0 の場合

他の解決策は機能しない可能性がありますが、次の例は機能するはずです。

解決策1: select2を含む、添付されたすべての変更イベントをトリガーします。

$('select').val('1').trigger('change');

解決策2: JUST select2変更イベントをトリガーする

$('select').val('1').trigger('change.select2');

これを見てjsfiddleこれらの例については、@minlare のソリューション 2 を参照してください。

説明:

たとえば、人の名前を含むベスト フレンド選択があるとします。つまり、Bob、Bill、John です (この例では、値は名前と同じであると想定しています)。まず、選択で select2 を初期化します。

$('#my-best-friend').select2();

ここで、ブラウザで Bob を手動で選択します。次に Bob が何か悪いことをするので、もう好きではなくなります。そこで、システムが Bob の選択を解除します。

$('#my-best-friend').val('').trigger('change');

または、システムに Bob の代わりにリスト内の次のものを選択させるとします。

// I have assume you can write code to select the next guy in the list
$('#my-best-friend').val('Bill').trigger('change');  

Select 2ウェブサイトに関する注意事項(非推奨および削除されたメソッド) は他の方にも役立つかもしれません:

.select2('val')「val」メソッドは非推奨となり、Select2 4.1 で削除されます。非推奨のメソッドには、triggerChange パラメータが含まれなくなりました。

代わりに、基になる要素で .val を直接呼び出す必要があります。2 番目のパラメーター (triggerChange) が必要な場合は、要素で .trigger("change") も呼び出す必要があります。

$('select').val('1').trigger('change'); // instead of $('select').select2('val', '1');

おすすめ記事