如何为查询设置额外参数,如
q=myseed&filter=1,2,34
更好的是附加事件 像
onFocus:function(){
//retrieve extra params
}
以下是该插件的链接 - http://loopj.com/jquery-tokeninput/
答案 0 :(得分:4)
以下是您可以执行此操作的方法,在下面的示例中,我将两个额外的参数传递给tokenInput网址。
this.$("#abcTextbox").tokenInput("url?someParam1=cricket&someParam2=yasser", {
queryParam: "q"
});
答案 1 :(得分:2)
这可以通过插件的本机功能(至少使用当前版本)实现,而不是在文档中编写:代码中有onSend callback。这是一个简单的例子
$(".my-input").tokenInput('autocomplete.php', {
hintText: false,
onSend: function(param1) {
// console.log($(this));
// console.log(param1);
param1.data.my_key = 'my_value';
}
});
答案 2 :(得分:1)
除了进入实际的插件代码并添加此功能之外,我能看到的另一种方法是将queryParam
更改为类似的内容 -
filter=1,2,34&q
这样,您的过滤器就会附加到实际查询参数中。它必须是硬编码的,每次你想要改变这个额外的过滤器时,你可能不得不重新初始化插件。
示例 -
$("#selector").tokenInput("PATH_TO_SCRIPT", {
queryParam: "filter=1,2,34&q"
});
答案 3 :(得分:1)
另一种方法,您可以使用初始URL来实现此目的。
类似的东西:
$("#selector").tokenInput("PATH_TO_SCRIPT&filter=1,2,3", {
queryParam: "q"
});
这将按预期处理
答案 4 :(得分:1)
我知道这个问题很老但我遇到了同样的问题并找到了答案。
查看源代码,url参数可以是在发送ajax查询之前被唤醒的函数。所以你可以这样做:
this.$("#abcTextbox").tokenInput(function(){
return "/path/to/script.php?filter="+$("#myFieldId").val()
}, {
queryParam: "q"
...
});