Jquery开始自我搜索
我目前正在使用以下内容:
var element = $('#Adiv').find('[name="thename"]');
这将在Adiv中搜索名称为“thename”的元素。 但Adiv也可能有’thename’这个名字,所以首先应该看看它自己的名字。 我该怎么做呢? 我尝试了andSelf()
,但即使它没有正确的名称,它也包含整个元素。
你可以这样做:
var element = $('#Adiv').parent().find('[name="thename"]');
这可能是一个选项,因为ID是唯一的:
$('#Adiv').find('*[name="thename"]').add($('#Adiv[name="thename"]'));
对于您的情况,只需更改选择器并删除find
:
var $element = $('#Adiv[name="thename"], #Adiv [name="thename"]');
这将导致包含Adiv的jQuery对象(如果匹配)以及匹配的Adiv的任何子对象。
如果你使用jQuery> = 1.4并且知道Adiv肯定存在于DOM中,那么另一种更高效的方法:
$('#Adiv').filter('[name="thename"]').add('[name="thename"]', window.Adiv);
…虽然我推荐第一个,因为它更清洁,更有弹性。