簡體   English   中英

如何在jquery.autocomplete函數中獲取對調用控件的引用

[英]How to get reference to calling control in jquery.autocomplete function

我有一個MVC頁面,其中包含多個文本條目。 頁面上的控件都是數據驅動的。 我所做的是用class =“ ACBox”標記每個自動完成輸入。 他們都有自己的ID。 我還添加了一個名為fname的自定義屬性,其中fname是字段標識符。 fname可以是“大小”,“顏色”,“連接點”等(可能很多)

我想做的是使用一個自動完成功能對控制器進行ajax調用,並將控件的fname傳遞回我的函數以返回適當的可能列表。

但是,我找不到一種方法來獲取對調用對象的引用,以便自動完成讀取fname屬性中的內容。 我目前在下面的解決方案,當我在GetOptionsFromField中進行檢查時,pfield為Nothing。

有沒有辦法設置pfield (可選)我可以使用this.id設置為pfield。

$(".ACBox").autocomplete({
        source: function (request, response) {
            $.ajax({
                url: "@Url.Action("GetOptionsFromField", "ControllerX")",
                dataType: "json",
                data: {
                    pfield: $(this).attr("fname")
                },
                success: function (data) {
                    response(data);
                }
            });
          },
        minlength: 5,
        open: function () {
            $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
        },
        close: function () {
            $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
        }

    });

好的,看來我需要更好地搜索。 這個問題早在2014年就得到了回答

我用

$(this.element).data("colname")

它就像一個魅力。

暫無
暫無

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

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