簡體   English   中英

有人可以向我解釋JQuery自動完成的回調函數如何工作

[英]Can someone please explain to me how the Callback functions for JQuery Autocomplete work

我正在嘗試使JQuery自動完成以使用一種表單,通過該表單您可以搜索對象的名稱,並且整個對象字段將以選定的結果完成。

當我只需要返回一個字符串時,我的自動完成工作正常,但是現在我需要返回一個更復雜的對象。

我試圖用json和用管道分隔的字符串來做到這一點。 從響應返回的字符串很好,但是自動完成功能不顯示任何結果。

有人可以告訴我我應該使用什么回調將結果分成字符串數組,然后如何訪問和格式化這些字符串以顯示它們?

另外,不同的回調函數的參數是什么,例如parse,formatItem,formatMatch,formatResult等。我真的很困惑,因為幾乎我讀過的每一篇文章都以不同的方式來做,而沒有人解釋實際發生的事情。

為什么無法在Firebug中調試回調? 代碼永遠不會碰到我的斷點

這是我的JavaScript

 $(document).ready(


      function ()
        {
            $("input#Venue_Name").autocomplete
            (
// data comes back in format VenueId|Name|AddressLine1|AddressLine2|City|PostCode|Country
                '<%= Url.Action("FindVenuesComplex","Ajax", new {@area=""}) %>',
                {
                    mustMatch: false,
                parse: function (data)
                {
                    return data.split('|');
                },
                formatItem: function (data)
                {
                    return data[1];
                },
                formatMatch: function (data)
                {

                    return data[1];
                },
                formatResult: function (data)
                {

                    return data[1];
                }
            }
                                ).result
                                (
                                    function (event, data, formatted)
                                    {
                                        if (data)
                                        {
                                            $("input#Venue_AddressLine1").val(data[2]);
                                        }
                                    }
                    );
    }
);

我弄清楚發生了什么,我想我可以分享,以防其他人遇到同樣的問題。

我使用的是JQuery Autocomplete插件,現在該插件已由Jquery.UI.AutoComplete取代,該插件現在是核心JQuery.UI的一部分,期望的參數有所不同。

我現在正在使用較新的版本。

http://theycallmemrjames.blogspot.com/2010/03/jquery-autocomplete-with-aspnet-mvc.html對於說明如何正確使用JQuery.UI版本非常有幫助

暫無
暫無

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

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