Javascript 在“中使用obj/this”;关于;方法
我的javascript看起来像Javascript 在“中使用obj/this”;关于;方法,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,我的javascript看起来像 $('.adv_group').each(function(){ var eachAdvGroup = $(this); $(document).on('keypress', **eachAdvGroup.find('.userinput:last')** ,function(){ //do something } }) 我知道“on”只接受字符串,所以如何将$(this.find('.userinput:last')
$('.adv_group').each(function(){
var eachAdvGroup = $(this);
$(document).on('keypress', **eachAdvGroup.find('.userinput:last')** ,function(){
//do something
}
})
我知道“on”只接受字符串,所以如何将$(this.find('.userinput:last')转换为字符串
另外,我想在每个组中获得最后一个.userinput
$('.adv_group').on('keypress', '.userinput:last', function(){
........
});
Jquery在内部对所有匹配的.adv\u group
进行循环
如果您的意思是.adv_group
不能保证始终存在,则可以将其委托给另一个父级或文档
$(document).on('keypress', '.adv_group .userinput:last-of-type', function(){
........
});
由于adv_group是动态生成的,以便在每个级别都选择它,因此您需要使用:type的last
或:last child
而不是:last
,以便它选择每个的last。userInput
。adv_group
而不是所有中的last。userInput
是所有adv_组的组合
$。每个()调用都是完全不必要的,您只需要
$(document).on('keypress', '.adv_group .userinput:last-of-type', function(e) {
var $ele = $(this);
//do something
}
您可以尝试$(document).on('keypress','.userinput:last',function(){})
@nietonfir如果要将其绑定到文档头,则不需要在document ready中使用它,否则需要。但我总是建议尽量靠近可用的父级,而不是将所有内容都委托给文档头。实际上,我希望在每个adv_组中获得最后一个用户输入。第一个用户输入在我生成.adv_组后不起作用。第二个选项仅适用于每个adv_组中的userinput:last而不是userinput:last。@McStream是否动态写入adv_组?如果键入多个单词,它将发出多次警报。我在该字段中键入时是否只能发出一次警报?仅供参考<代码>:最后一个
在这种情况下不起作用,请参阅更新的mu答案。你可以把它固定在你的电脑里well@PSL的确如此<代码>:最后一个孩子也应该做这项工作。