Javascript 如何访问选择器的对象而不是事件选择器,
我使用jquery创建自定义插件组件,我有一个名为InputPingGroup的插件,我可以使用选项启动它,并调用名为 我创建了自定义事件“maxedinput”,当输入超出字符限制(引脚最大值为6)时将触发该事件。然后在插件中,您可以调用类似“禁用”和“加载”的方法 (由于与问题无关,我将跳过其余的pf插件细节) 问题是,我想使用某种类型的“THIS”调用所选jquery对象的.inputPinGroup中的方法,以便它更具可读性 因为它在.on()内,当我试图调用$(this.InputPingGroup('disable'); 这种方法行不通, 我试过这个。InputPingGroup('disable');也不行 如何使用某种“this”机制访问$(“#testing-pin-input-group2”)Javascript 如何访问选择器的对象而不是事件选择器,,javascript,jquery,Javascript,Jquery,我使用jquery创建自定义插件组件,我有一个名为InputPingGroup的插件,我可以使用选项启动它,并调用名为 我创建了自定义事件“maxedinput”,当输入超出字符限制(引脚最大值为6)时将触发该事件。然后在插件中,您可以调用类似“禁用”和“加载”的方法 (由于与问题无关,我将跳过其余的pf插件细节) 问题是,我想使用某种类型的“THIS”调用所选jquery对象的.inputPinGroup中的方法,以便它更具可读性 因为它在.on()内,当我试图调用$(this.InputPi
$("#testing-pin-input-group2").on("maxedinput", (function (event, pinValue, param2) {
setTimeout(function(){
$("#testing-pin-input-group2").inputPinGroup('disable');// work
$("#testing-pin-input-group2").inputPinGroup('loading');// work
$(this).inputPinGroup('disable'); // doesnt work, i want to acces the $('#testing-pin-input-group2') so that code is more readable
},1000);
})
);
经过一个小时的搜索,我似乎找不到直接访问“this”的方法,我找到了我所期望的解决方法:
$("#testing-pin-input-group2").on("maxedinput", (function (event, pinValue, param2) {
var inputGroup = this;
setTimeout(function(){
$(inputGroup).inputPinGroup('disable');
},2000);
})
);
您是否尝试过
$(此)[0]。InputPingGroup('disable')代码>@kmoser我刚刚尝试过,未捕获的TypeError:$(…)[0]。InputPingGroup不是一个函数“我将跳过其余pf插件细节,因为它与问题无关”,它似乎与问题有关。不执行$('#testing-pin-input-group2')。inputPinGroup('disable')代码>工作?@kmoser是的,它确实工作,我测试过。顺便说一句,我编辑了代码,我错过了settimeout函数。