如何設置額外的參數來查詢像jQuery的tokeninput篩選查詢發送額外的參數
q=myseed&filter=1,2,34
更好地會帶有附加事件 像
onFocus:function(){
//retrieve extra params
}
這裏是一個插件的鏈接 - http://loopj.com/jquery-tokeninput/
如何設置額外的參數來查詢像jQuery的tokeninput篩選查詢發送額外的參數
q=myseed&filter=1,2,34
更好地會帶有附加事件 像
onFocus:function(){
//retrieve extra params
}
這裏是一個插件的鏈接 - http://loopj.com/jquery-tokeninput/
除了進入實際的插件代碼並添加此功能,唯一的另一種方式,我可以看到這樣做是通過更改th ËqueryParam
喜歡的東西 -
filter=1,2,34&q
這樣,你的過濾器被簡單地附加到實際查詢參數。它必須經過硬編碼,每次你想改變這個額外的過濾器時,你可能不得不重新初始化插件。
示例 -
$("#selector").tokenInput("PATH_TO_SCRIPT", {
queryParam: "filter=1,2,34&q"
});
另一種方式來做到這一點,你可以使用初始URL來實現這一目標。
一樣的東西:如預期
這是行不通的,它會以'PATH_TO_SCRIPT&filter = 1 ,2,3?q = term'到服務器 – Oktav 2013-05-07 13:25:05
這實際上工作,但你不必聲明查詢參數,而不是「&」使用「?」:'''$(「#selector」 )。tokenInput(「PATH_TO_SCRIPT?filter = 1,2,3」,{you settings}); ''' – Thanatos11th 2017-05-09 15:12:40
這裏
$("#selector").tokenInput("PATH_TO_SCRIPT&filter=1,2,3", {
queryParam: "q"
});
這將是處理是你如何能做到這一點,在下面的例子中,我傳遞了兩個額外的參數去的tokenInput網址。
this.$("#abcTextbox").tokenInput("url?someParam1=cricket&someParam2=yasser", {
queryParam: "q"
});
我知道這個問題是很老,但我有同樣的問題,並找到了答案。
看看源代碼,url參數可以是一個在發送ajax查詢之前跳過的函數。所以,你可以這樣做:
this.$("#abcTextbox").tokenInput(function(){
return "/path/to/script.php?filter="+$("#myFieldId").val()
}, {
queryParam: "q"
...
});
但是,網址被緩存。只有第一次運作。 – darethas 2016-03-17 13:27:58
這可能是由插件的原始功能(至少當前版本),它只是沒有寫在文檔中:有代碼onSend callback。下面是簡單的例子
$(".my-input").tokenInput('autocomplete.php', {
hintText: false,
onSend: function(param1) {
// console.log($(this));
// console.log(param1);
param1.data.my_key = 'my_value';
}
});
插件的作者根本就沒有提供這個功能... – Lix 2012-08-14 11:10:20
@Lix,現在它是可能的,請參閱我的回答http://stackoverflow.com/a/31720287/932473 – dav 2015-07-30 09:42:30