使用Ajax的Select2没有发送请求

我正在使用Select2版本4.0.0并尝试从PHP脚本加载远程JSON,该脚本返回我需要的已格式化数据。 问题是,黑暗的力量正在制造一些东西,因为我无法发送请求,没有错误,但没有发送请求,它只是像魔鬼一样安静,我几乎哭了!

我使用LiveScript和Jade作为JavaScript和HTML的替代品,但我会在这里翻译。

首先,我的标记定义了可选字段:

 

然后,我可以使它看起来像一个可选择的元素:

  $("#satan-hates-me").select2({ placeholder: "Hail", minimumInputLength: 1, ajax: { // Here that bad things happen, I mean, don't happen url: "http://localhost/os/backend/TestServiceOrder.php?req=getEquipments", dataType: "json", type: "GET", quietMillis: 50, data: function(term) { return { term: term } }, results: function(data) { return data; } } }); 

我正在执行这个包装在一个加载函数中,在页面加载后,它看起来像一个可选择的,但没有发送任何请求,并且该脚本返回了我所需的格式,例如:

 [{id: 1, text: "Sadness"}, {id: 2, text: "Depression"}] 

而且这里。 我可以设计编译器,但我不能在世界上使用Ajax使插件工作! 请问有人可以帮助我吗?

终于解决了这个问题。

select2 v4不支持

你必须使用元素

就在今天,我开始使用这个插件。

尝试替换这个:

 data: function(term) { return { term: term } } 

这样:

 data: function(term) { return { term: term.term } } 

但无论如何..即使传递的数据格式错误,也应该发送请求…