簡體   English   中英

從自動完成jQuery UI獲取返回的結果數

[英]Get the number of returned results from Autocomplete jQuery UI

我得到了以下代碼

$("#UserSearch").autocomplete({
    source: "search.php",
    minLength: 2
});

在這里,用戶輸入一封電子郵件,我在數據庫中進行搜索,但是我需要查找自動完成功能停止獲取結果的時間。 例如,我得到了user@example.com和user2@example.com。 如果當前用戶正在搜索“ user3”,並且頁面不再返回結果,那么我該如何抓住這一刻,以便可以在頁面上顯示另一個元素。

您可以考慮檢查open事件中顯示的元素數,如果len為0,則可以相應地顯示另一個元素。

其他解決方案是使用自定義_renderItem函數或自定義擴展窗口小部件,但是在這種情況下,這可能是一個更簡單的解決方案。

碼:

$("#project").autocomplete({
    minLength: 0,
    source: projects,
    open: function (event, ui) {
        var len = $('.ui-autocomplete > li').length;
        $('#count').html('Founded ' + len + ' results');
    }
});

演示: http : //jsfiddle.net/IrvinDominin/DZ9zU/

更新

更好地使用response事件:

搜索完成后觸發,然后顯示菜單。 對於本地處理建議數據很有用,其中不需要自定義源選項回調。 即使沒有顯示菜單,因為沒有結果或自動完成功能被禁用,也總是在搜索完成時觸發此事件。

碼:

$("#project").autocomplete({
    minLength: 0,
    source: projects,
    response: function (event, ui) {
        var len = ui.content.length;
        $('#count').html('Founded ' + len + ' results');
    }
});

演示: http : //jsfiddle.net/IrvinDominin/DZ9zU/1/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM