Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择2不显示Json的结果_Javascript_Jquery_Html_Jquery Select2 - Fatal编程技术网

Javascript 选择2不显示Json的结果

Javascript 选择2不显示Json的结果,javascript,jquery,html,jquery-select2,Javascript,Jquery,Html,Jquery Select2,我正在尝试实现远程数据选择2 Json数据很好,但是select2不显示结果,它只显示微调器图像并显示正在加载 这里是Json 我只希望FormName显示在结果中,但它不起作用: 剧本 但我不确定用数据写什么 当我尝试只搜索数据时,并没有搜索它,而是说未定义,但至少我知道它可以给出结果,并且这里有问题 我举这个例子: 我不得不对我的代码做一些修改,但现在它可以工作了 脚本: $('#selectParentMenu').select2({ minimumInput

我正在尝试实现远程数据选择2

Json数据很好,但是select2不显示结果,它只显示微调器图像并显示正在加载

这里是Json

我只希望FormName显示在结果中,但它不起作用:

剧本

但我不确定用数据写什么

当我尝试只搜索数据时,并没有搜索它,而是说未定义,但至少我知道它可以给出结果,并且这里有问题

我举这个例子:

我不得不对我的代码做一些修改,但现在它可以工作了

脚本:

$('#selectParentMenu').select2({
               minimumInputLength:1,
               placeholder:"Select Parent Menu",
                ajax: {
                    type:"post",
                    url: "{{base_url()}}admin/configurations/loadAllParentFormNames/",
                    dataType: 'json',
                    quietMillis: 100,
                    data: function(term, page) {
                        return {
                            term: term, //search term
                            page_limit: 10 // page size
                        };
                    },
                    results: function(data, page ) {
                        var newData = [];
                        _.each(data, function (item) {
                            newData.push({
                                id: item.FormID  //id part present in data
                                , text: item.FormName  //string to be displayed
                            });
                        });
                        return { results: newData };
                    }

                }
            });
我删除了一些我基本上不懂的旧台词。并添加了这个

results: function(data, page ) {
    var newData = [];
    _.each(data, function (item) {
        newData.push({
            id: item.FormID  //id part present in data
            , text: item.FormName  //string to be displayed
        });
    });
    return { results: newData };
}
我从你那里得到这个密码

这里有一些问题,我不得不使用underline.js库,如果有人能将代码的小部分更改为普通for循环,我很乐意接受他的/答案。我的代码不需要额外的库

如果有人可以,请将此更改为正常for循环

_.each(data, function (item) {
                            newData.push({
                                id: item.FormID  //id part present in data
                                , text: item.FormName  //string to be displayed
                            });
更新:

for ( var i = 0; i < data.length; i++ ) {
                            newData.push({
                                id: data[i].FormID,  //id part present in data
                                text: data[i].FormName  //string to be displayed
                            });

多亏了stackoverflow社区,帮助我解决了这个循环。

替换结果:functiondata,逐页处理结果:functiondata,page

ajax是否提供了results属性?@HJBotter92 well select2在教程中添加了结果,并且对他们有效。他也有类似的问题。正在使用用processResults替换结果的v4。重命名函数后,一切正常。
$('#selectParentMenu').select2({
               minimumInputLength:1,
               placeholder:"Select Parent Menu",
                ajax: {
                    type:"post",
                    url: "{{base_url()}}admin/configurations/loadAllParentFormNames/",
                    dataType: 'json',
                    quietMillis: 100,
                    data: function(term, page) {
                        return {
                            term: term, //search term
                            page_limit: 10 // page size
                        };
                    },
                    results: function(data, page ) {
                        var newData = [];
                        _.each(data, function (item) {
                            newData.push({
                                id: item.FormID  //id part present in data
                                , text: item.FormName  //string to be displayed
                            });
                        });
                        return { results: newData };
                    }

                }
            });
results: function(data, page ) {
    var newData = [];
    _.each(data, function (item) {
        newData.push({
            id: item.FormID  //id part present in data
            , text: item.FormName  //string to be displayed
        });
    });
    return { results: newData };
}
_.each(data, function (item) {
                            newData.push({
                                id: item.FormID  //id part present in data
                                , text: item.FormName  //string to be displayed
                            });
for ( var i = 0; i < data.length; i++ ) {
                            newData.push({
                                id: data[i].FormID,  //id part present in data
                                text: data[i].FormName  //string to be displayed
                            });