0
搜索tokenInput我已經把我的propertyToSearch:「名字」設置多個propertyToSearch使用jQuery的插件從
但我也想在這樣的另一個字段進行搜索:
propertyToSearch: "name,email"
或
propertyToSearch: ["name","email"]
這可能嗎?
搜索tokenInput我已經把我的propertyToSearch:「名字」設置多個propertyToSearch使用jQuery的插件從
但我也想在這樣的另一個字段進行搜索:
propertyToSearch: "name,email"
或
propertyToSearch: ["name","email"]
這可能嗎?
如果不更改jQuery-tokeninput.js中插件的核心,就無法做到這一點。 基本上你需要在兩個地方拆分propertyToSearch,併爲每個找到的屬性做一些事情。
例子我做了什麼(約道924):
var this_li;
if($(input).data("settings").propertyToSearch.indexOf(',') > -1){
var propertiesToSearch = $(input).data("settings").propertyToSearch.split(',');
}
if(typeof propertiesToSearch != 'undefined' && propertiesToSearch.length > 0){
this_li = $(input).data("settings").resultsFormatter(value);
$.each(propertiesToSearch, function(index, property){
this_li = find_value_and_highlight_term(this_li ,value[property], query);
});
this_li = $(this_li).appendTo(dropdown_ul);
}
else{
this_li = $(input).data("settings").resultsFormatter(value);
this_li = find_value_and_highlight_term(this_li ,value[$(input).data("settings").propertyToSearch], query);
this_li = $(this_li).appendTo(dropdown_ul);
}
而且類似的變化周圍行1091:
// Do the search through local data
var results = $.grep($(input).data("settings").local_data, function (row) {
if($(input).data("settings").propertyToSearch.indexOf(',') > -1){
var propertiesToSearch = $(input).data("settings").propertyToSearch.split(',');
}
if(typeof propertiesToSearch != 'undefined' && propertiesToSearch.length > 0){
var status = false;
$.each(propertiesToSearch, function(key, value){
if(row[value].toLowerCase().indexOf(query.toLowerCase()) > -1){
status = true;
}
});
return status;
}
else{
return row[$(input).data("settings").propertyToSearch].toLowerCase().indexOf(query.toLowerCase()) > -1;
}
});