1. ホーム
  2. javascript

[解決済み] jQuery Select2の選択値を設定する方法は?

2022-03-10 12:07:48

質問

これはSelect2バージョン4以前のコードに属します。

というシンプルなコードを持っています。 select2 AJAXからデータを取得する。

$("#programid").select2({
  placeholder: "Select a Program",
  allowClear: true,
  minimumInputLength: 3,
  ajax: {
    url: "ajax.php",
    dataType: 'json',
    quietMillis: 200,
    data: function (term, page) {
      return {
        term: term, //search term
        flag: 'selectprogram',
        page: page // page number
      };
    },
    results: function (data) {
      return {results: data};
    }
  },
  dropdownCssClass: "bigdrop",
  escapeMarkup: function (m) { return m; }
});

このコードは動作していますが、編集モードであるかのように値を設定する必要があります。ユーザーが最初に値を選択すると、それが保存され、その値を編集する必要があるときに、同じ選択メニューに表示される必要があります ( select2 を選択する必要があるのですが、方法が見つかりません。

UPDATEしてください。

HTMLのコードです。

<input type="hidden" name="programid" id="programid" class="width-500 validate[required]">

セレクト2プログラムアクセス は、これでは動作しません。

解決方法は?

Select2コンポーネントの"selected"値を動的に設定するには。

$('#inputID').select2('data', {id: 100, a_key: 'Lorem Ipsum'});

ここで、2番目のパラメータは期待される値を持つオブジェクトである。

UPDATEしてください。

これは動作します。ただ、新しいselect2には注意してください。 "a_key" "テキスト" を標準的なselect2オブジェクトの中に入れています。 {id: 100, text: 'Lorem Ipsum'}

$('#all_contacts').select2('data', {id: '123', text: 'res_data.primary_email'});

NoobishProに感謝