Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.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显示ajax请求的错误_Javascript_Php_Jquery_Ajax_Select2 - Fatal编程技术网

Javascript 选择2显示ajax请求的错误

Javascript 选择2显示ajax请求的错误,javascript,php,jquery,ajax,select2,Javascript,Php,Jquery,Ajax,Select2,我想使用select2处理使用ajax请求的数据。但它显示了这个错误 Error: Option 'ajax' is not allowed for Select2 when attached to a <select> element. 像这样获取JSON响应 [{"expense_id":"2","user_id":"5","expense_detail":"abcdh1","amount":"123","expense_date":"2016-10-18","expense_

我想使用select2处理使用ajax请求的数据。但它显示了这个错误

Error: Option 'ajax' is not allowed for Select2 when attached to a <select> element.
像这样获取JSON响应

[{"expense_id":"2","user_id":"5","expense_detail":"abcdh1","amount":"123","expense_date":"2016-10-18","expense_type":"pocket","team_code":"0","team_id":"0"},{"expense_id":"3","user_id":"5","expense_detail":"hxyz1","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"4","user_id":"5","expense_detail":"abch2","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"5","user_id":"5","expense_detail":"abh3","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"6","user_id":"5","expense_detail":"ah4","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"7","user_id":"5","expense_detail":"h5","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"}]
我正在使用此select2版本

版权所有2012伊戈尔·温伯格

版本:3.2时间戳:2012年9月10日星期一10:38:04 PDT


非常感谢您的帮助。谢谢。

Select2
希望结果带有
ID
TEXT
属性,因此您需要将结果重写为

            results: function (data) {
                var tmpResults = [];

                $.each(data, function (index, item) {
                    tmpResults.push({
                        'id': item.user_id,
                        'text': item.expense_detail,
                    });
                });
                return {
                    results: tmpResults
                };
             }

希望这对您有所帮助

因为您使用的是版本4下面的
Select2
,您需要放置一个隐藏元素,如
,并且应该将您现有的初始化设置为
$(“#hiddenElem”)。选择2({………..
以其他方式适应的版本4Select2@ArturFilipiak问题是为什么会显示该错误…………错误:Select2在附加到元素时不允许使用选项“ajax”。@DavidR谢谢我正在检查它。。一旦它起作用,我将在这里发表评论。为什么否决……。@DavidR我面临一个问题,我现在正在使用4.0.3。。现在w对于每个请求,为什么“term”查询字符串都包含这个../selecttest?term%5B_type%5D=您有类似于
return{term:term.term};
的内容作为
data
属性的输入,我想您在那里有一个额外的
term
,它需要是
return{term:term}
我放置了term:term.term,因为term对象还包含一些其他属性,比如_type,所以我只想将我们输入的字符串传递到搜索框中。因此term.term包含该字符串。它还返回json数据。我想问题只是将json响应附加到该选择框中…………好的,下面是一个示例w我把它放在一把小提琴里,模仿你的json(托管在myjson.com中,作为rest调用使用)。它似乎按照预期工作。请检查这里-谢谢@David R。它使用输入字段工作。但为什么它不使用选择元素工作…正如我在html中所显示的…!!!!!!!!!!!基本上,Select2库将给定的html输入控件作为div进行操作,并填充/呈现Select2。
[{"expense_id":"2","user_id":"5","expense_detail":"abcdh1","amount":"123","expense_date":"2016-10-18","expense_type":"pocket","team_code":"0","team_id":"0"},{"expense_id":"3","user_id":"5","expense_detail":"hxyz1","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"4","user_id":"5","expense_detail":"abch2","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"5","user_id":"5","expense_detail":"abh3","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"6","user_id":"5","expense_detail":"ah4","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"},{"expense_id":"7","user_id":"5","expense_detail":"h5","amount":"123","expense_date":"2016-10-11","expense_type":"","team_code":"45664654","team_id":"46546"}]
            results: function (data) {
                var tmpResults = [];

                $.each(data, function (index, item) {
                    tmpResults.push({
                        'id': item.user_id,
                        'text': item.expense_detail,
                    });
                });
                return {
                    results: tmpResults
                };
             }