9

こんにちは、Ajax 呼び出しから JSON でエンコードされた配列 ("html") を取得しています。この配列を値とテキスト (タグを使用しています) の両方として selectize に追加したいと考えています。どうやってやるの ?

HTML

<input type="text" value="test" class="demo-default selectized" id="input-tags" tabindex="-1" style="display: block;">

Jクエリ

try {
    data = $.parseJSON(html);
var obj = jQuery.parseJSON(html);

outcome = (obj.outcome);

$('#input-tags').selectize({
            delimiter: ',',
            persist: false,
            maxItems: 1,
            create: function (input) {
                return {
                    value: input,
                    text: input
                }
            }
        });

}

4

2 に答える 2

13

次のように、配列をオブジェクトの配列にマップできます。

data = $.parseJSON(html);
var items = data.map(function(x) { return { item: x }; });

次に、「labelField」と「valueField」を使用してテキスト/値を指定します。

$('#input-tags').selectize({
        delimiter: ',',
        persist: false,
        options: items,
        labelField: "item",
        valueField: "item"
    });

フィドルのデモ。

于 2013-10-08T00:28:26.870 に答える