Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问选择器的对象而不是事件选择器,_Javascript_Jquery - Fatal编程技术网

Javascript 如何访问选择器的对象而不是事件选择器,

Javascript 如何访问选择器的对象而不是事件选择器,,javascript,jquery,Javascript,Jquery,我使用jquery创建自定义插件组件,我有一个名为InputPingGroup的插件,我可以使用选项启动它,并调用名为 我创建了自定义事件“maxedinput”,当输入超出字符限制(引脚最大值为6)时将触发该事件。然后在插件中,您可以调用类似“禁用”和“加载”的方法 (由于与问题无关,我将跳过其余的pf插件细节) 问题是,我想使用某种类型的“THIS”调用所选jquery对象的.inputPinGroup中的方法,以便它更具可读性 因为它在.on()内,当我试图调用$(this.InputPi

我使用jquery创建自定义插件组件,我有一个名为InputPingGroup的插件,我可以使用选项启动它,并调用名为

我创建了自定义事件“maxedinput”,当输入超出字符限制(引脚最大值为6)时将触发该事件。然后在插件中,您可以调用类似“禁用”和“加载”的方法 (由于与问题无关,我将跳过其余的pf插件细节)

问题是,我想使用某种类型的“THIS”调用所选jquery对象的.inputPinGroup中的方法,以便它更具可读性

因为它在.on()内,当我试图调用$(this.InputPingGroup('disable'); 这种方法行不通, 我试过这个。InputPingGroup('disable');也不行

如何使用某种“this”机制访问$(“#testing-pin-input-group2”)

    $("#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函数。