web-dev-qa-db-ja.com

Select2-ローカルデータとしてJSONを使用

これを機能させることができます...

var options = [{id: 1, text: 'Adair, Charles'}]  
$('#names').select2({
    data: options,
})

しかし、私はここからの行き方がわかりません...

alert(JSON.stringify(request.names))は私に与えます...

[{"id":"1","name":"Adair,James"},
{"id":"2","name":"Anderson,Peter"},
{"id":"3","name":"Armstrong,Ryan"}]

Select2がローカルデータとして受け入れるものへ

16
ChrisG

追加するだけです。これも私のために働いた:

HTML:

<select id="names" name="names" class="form-control"></select>

Javascript

$('#names').select2();

var options = $('#names');

$.each(sampleArray, function() {
    options.append($("<option />").val(this.id).text(this.name));
});
4
Emeka Mbah

この古い投稿の更新として、idおよびtextのカスタムプロパティを持つことは4.0.0以降のバージョンから直接サポートされなくなりました。

「idおよびtextプロパティが厳密に適用される」テキストブロックの here を参照してください。回避策として$ .mapオブジェクトを作成する必要があります。

さらに、すべてのコアselect2オプションが[select] htmlオブジェクトをサポートするようになったため、[input type = "hidden"]の操作は非推奨になりました。

ジョンSの回答をご覧ください この投稿 も。

2
DotNetBeliever