Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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,例如: $('#enquiry-form').on('click','.close', function(){ $(this)..code.. }); $(this)将引用。关闭“”,但是有没有一种方法可以引用$(“#查询表单”),类似于使用javascript的this或$(this)?如果您有多个具有相同选择器的父dom(比如说classname查询表单),您可以使用.closest()与此一起: $(this).closest('.enquiry-form');//would

例如:

$('#enquiry-form').on('click','.close', function(){ 
    $(this)..code..
});

$(this)
将引用
关闭“”,但是有没有一种方法可以引用
$(“#查询表单”)
,类似于使用javascript的
this
$(this)

如果您有多个具有相同选择器的父dom(比如说classname
查询表单
),您可以使用
.closest()
与此一起:

$(this).closest('.enquiry-form');//would be $(this).closest('#enquiry-form') in your case
但由于ID是唯一的,您可以简单地使用:

$('#enquiry-form')
您可以使用或

 $(this).closest('#enquiry-form')

是的,您可以使用
$(this).parent()引用它。
..

当然,您必须以这种方式调用代码:

$('#enquiry-form').on('click','.close', function(){ 
    $(this).parent().code..
});

您可以使用来获取委托目标

$('#enquiry-form').on('click','.close', function(event){ 
     alert($(event.delegateTarget)[0].id);
});
此属性在附加的委派事件中最常用 .delegate()或.on(),其中事件处理程序附加在 正在处理的元素的祖先。例如,它可以被使用, 要在委派点标识和删除事件处理程序


它是一个id。那么为什么要指定最近的?@preprocessor:如果有多个相同的id,那么最近的是required@MilindAnantwarclosest()的问题是,它在DOM中搜索并获得第一个匹配的元素。如果他有多个ID,那么兄弟姐妹()或下一个()更有效。这是我要找的,而不是像其他答案那样的父()!谢谢你,阿迪尔。
$('#enquiry-form').on('click','.close', function(event){ 
     alert($(event.delegateTarget)[0].id);
});