Select 选项在应用 Select2 时变为空白

Select option become blank when Select2 is applied

我目前将此输入元素输出到我的浏览器:

<select name="data[Repository][owner_id]" class="owners" style="width: 100%" id="RepositoryOwnerId">
    <option value="1" selected="selected">value here</option>
</select>

当我添加 jQuery 代码以启用 Select2 时,它会删除该选项的内容,我在框中看不到任何内容。我在 Firefox 中也使用 Inspect Element 时,该选项的值为空。

$('#RepositoryOwnerId').selectize({
    valueField: 'id',
    labelField: 'name',
    searchField: 'name',
    minimumInputLength: 2,
    options: [],
    create: false,
    render: {
        option: function(item, escape) {
            return '<div>'+ escape(item.name) + '</div>';
        }
    },
    load: function(query, callback) {

        if (!query.length) return callback();
        $.ajax({
            url: '/file/to/remote/<?php echo $id?>',
            type: 'GET',
            delay: 250,
            dataType: 'json',
            data: {
                q: query
            },
            error: function(xhr, status, error) {
                //alert(error);
                callback();
            },
            success: function(res) {
                callback(res.users);
            }
        });
    }
});

查看以下页面的代码: https://select2.github.io/examples.html

我决定这样初始化一个变量:

echo "<script>var owners = [{ 'id': '12345', 'name': 'Name Here'}]</script>";

然后,在加载时,如果查询长度为0,那么return回调中的所有者:

if (!query.length) return callback(owners);

那也不行。如果我在其中添加警报,它不会在页面加载时触发。

删除 options: []。您不能传入空数组,所以只需删除引用即可。