簡體   English   中英

如何完全刪除JQuery自動完成中使用的默認查詢字符串

[英]How to entirely remove the default query-string used in JQuery Autocomplete

在以下情況下,我無法弄清楚如何使用JQuery Autocomplete。

我試圖將它連接到返回JSON對象的Web服務。 URL表單如下:

host/api/schools/{search-term}

沒有查詢字符串?term=或其他任何內容。

如何設置自動完成功能? 我是JavaScript的新手,但我可以順手而過。

我試過以下幾點:

$(...).autocomplete({
    source: function(term, callback) {
        $.getJSON("url", { foo: term }, callback);
    }
});

但是無法將它傳遞給host/api/schools/{search-term}到服務器(當使用fiddler檢查時,它出現為host/api/schools/?foo%5Bterm=%5D{search-term}其中{search-term}是輸入的文本。

救命?

在這里添加它,因為它基本上回答了問題,來自jquery-ui文檔:

第三種變體即回調提供了最大的靈活性,可用於將任何數據源連接到自動完成。 回調有兩個參數:

一個請求對象,具有一個名為“term”的屬性,它引用當前文本輸入中的值。 例如,當用戶在城市字段中輸入“new yo”時,自動完成術語將等於“new yo”

一個響應回調,它要求一個參數包含要向用戶建議的數據。 應根據提供的術語過濾此數據,並且可以采用上述任何簡單本地數據格式(String-Array或具有標簽/值/兩者屬性的Object-Array)。 在提供自定義源回調以處理請求期間的錯誤時,這很重要。 即使遇到錯誤,也必須始終調用響應回調。 這可確保窗口小部件始終具有正確的狀態。

暫無
暫無

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

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