我一直在试验tokeninput
。它就像一个魅力。但最近我偶然发现了一个要求,即在输入栏上进行两次ajax调用。
场景:我的输入栏
<input id="autocompleteMe" >
我通过以下方式初始化tokeninput
插件:
$("#autocompleteMe").tokeninput(
"mysite/LookUp.php?callFrom=FromFile",
{
theme : "facebook",
propertyToSearch : "myProp"
}
);
这很好用&amp;得到结果并用结果填充我的下拉列表。
要求: 此结果来自我的服务器上的文件。如果找到/未找到结果(在两种情况下),我还需要在我的数据库中查找相同的输入,并提供建议。由于数据库可能已更新。
即。在用户输入上应该触发两个ajax调用:
我的想法:
$("#autocompleteMe").tokeninput(
"mysite/LookUp.php?callFrom=FromFile",
{
theme : "facebook",
propertyToSearch : "myProp",
onResult : function(result){
// bind the returned results here to the dropdown . Since they are from the file
// but how ?
$.getJSON("mysite/LookUp.php",{callFrom : "DBCall"},function(DBResponse){
// append the results to the dropdown .
// also this will a async call . i will have attach the callback . I have no idea how to
});
}
}
);
为这样一个愚蠢的问题道歉。但是我很久以来就在这个问题上喋喋不休。 任何帮助都是有义务的。
谢谢&amp;此致!
答案 0 :(得分:0)
你走在正确的道路上......
如果我没弄错的话,你的onResult块看起来应该是这样的
onResult : function(firstResultSet){
var returningResults;
$.getJSON("mysite/LookUp.php",{callFrom : "DBCall", firstResultSet: firstResultSet},function(DBResponse){
returningResults = DBResponse;
});
return returningResults;
}
重点是,你在 onResult 回调中做了你想做的任何事情,在你操纵数据之后,你返回它。