【问题标题】:How to get reference to calling control in jquery.autocomplete function如何在 jquery.autocomplete 函数中获取对调用控件的引用
【发布时间】:2019-09-05 02:33:10
【问题描述】:

我有一个包含多个文本条目的 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");
        }

    });

【问题讨论】:

    标签: javascript jquery ajax asp.net-mvc jquery-ui-autocomplete


    【解决方案1】:

    好的,看来我需要更好地搜索。这在 2014 年得到了回答,with this question.

    我用

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

    它就像一个魅力。

    【讨论】:

      猜你喜欢
      • 2012-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多