如何在select2字段中最初显示保存的值

时间:2017-10-02 10:03:19

标签: javascript json jquery-select2

我正在使用select2 3.5.3从JSON文件中获取远程数据,以便在Drupal节点编辑表单中填充字段。

当没有存储值时,我的javascript很有效地获取值,显示一些占位符文本以向用户发出指令,但是当我加载已经存储了值的页面时,select2中没有显示任何内容。

你会看到输入有一个值,但是我想要的是显示文本,可以从JSON文件中匹配。

HTML:

<input type="text" id="myfieldid" name="myfieldname" value="my value"  style="display: none;">

JS:

$("#edit-field-crm-link-und-0-value").select2({
minimumInputLength: 3,
placeholder: "Start typing to search for course titles",
ajax: {
    url: "http://offthehookdesign-domain.uk/available-courses.txt",
    dataType: 'json',
    type: "GET",
    quietMillis: 50,
    data: function (term) {
        return {
            term: term
        };
    },
results: function(data, page ) {
return { results: data}
}
}
});

这似乎应该可以使用initSelection,但我能得到的最接近的是使用以下JS获取输入的值:

initSelection: function(element, callback) {
var id=$(element).val();
    if (id!=="") {
        callback({id:id, text : $(element).attr('value')});
    }
}

显然我想在原始JSON文件中显示与此ID值匹配的文本。

0 个答案:

没有答案