在接受功能上访问燃料UX标语牌中的“this”

Access "this" in Fuel UX placard onAccept function

本文关键字:this 标语牌 UX 功能上 访问 燃料      更新时间:2023-09-26

我在一个页面上有几个Fuel UX标语牌,只有一个jQuery选择器来初始化它们。 我需要编写一个自定义onAccept函数来处理标语牌确认。

似乎我应该能够从onAccept中访问$(this)以访问正在初始化的元素,但它只指向window对象。

如何访问标语牌onAccept函数中的当前元素?

这是我的代码供参考:

$(".select-user-placard").placard({explicit: true, onAccept: function (helpers) {
    DMSC.UpdateUser(DMSC.SelectedForm.Id, $(this).data("field-type"), helpers.value);
}});

我需要调用这个函数,传递一个从元素上的数据属性检索的参数,但我不确定如何在不使用this的情况下访问当前元素。

我想

我有点被无法访问this抛弃了,我想不出明显的解决方案:

            $(".select-user-placard").each(function (index, element) {
                var $element = $(element);
                $element.placard({explicit: true, onAccept: function (helpers) {
                    DMSC.UpdateUser(DMSC.SelectedForm.Id, $element.data("field-type"), helpers.value);
                }});
            });

我没有在jQuery选择器上调用标语牌,而是使用jQuery的each遍历每个,并且只使用jQuery迭代器来选择该元素的数据。