總結:添加的所有項目的類別需要與項目名稱一起保存。這樣就可以在提交時傳輸此類別信息,以便使用正確的查詢(與正確的表格有關)。想法?jQueryUI類別通行證類別信息
我需要做的是,當用戶選擇他們正在搜索的內容(從自動完成下拉菜單中選擇)時,類別信息(又名類別名稱)也會記錄在某處。
這個想法是,當用戶按搜索,他們正在尋找的短語以及類別名稱也發送。推理:你有3張桌子,其中一張包含汽車信息,一張在動物身上,另一張在外國人身上。如果所涉及的表已經確定(從類別信息中),則不需要全部查詢3。
與搜索所有3問題是,你可能有一個名爲海綿鮑勃外星人,以及動物等
這裏是我們正在處理(從jQueryUI的網站)的代碼:
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
我的想法是,品類齊全的功能中,下選擇事件:
$(function() {
$("#search").catcomplete({
delay:0,
source: "query/encode-json.php?term="+ $("#search").val(),
select: function(event, ui){
}
});
});
是與所選項目相關聯的類別,可以發送/秒在某處。我遇到的問題是,我可以在窗口小部件功能(item.category)中獲取此信息,但該信息在select事件中不可用(直接)。這是有道理的,因爲小部件只填充列表,它不處理選擇事件(我在想),但不知何故我需要能夠訪問這些信息。我的想法是找到索引並從那裏倒退,但似乎並不奏效。另一個選項(更基本的)是每次小部件循環播放時,類別名稱將被添加到li元素的標題字段中。
我一直在嘗試幾個小時,沒有得到任何解決方案。
感謝您的任何光線,你可能會流下:)