1

我的任务是测试元素的一个或多个子元素是否具有给定属性,如果标记是

<div>
   <div attributename="xyz" />
</div>

那么测试是真的但是如果标记是

<div>
   <div>
      <div attributename="xyz" />
   </div>
</div>

那么结果应该是错误的。

到目前为止,我已经到了

$(":[attributename]",context);

但这两种情况都会返回 true

4

2 回答 2

1

用这个...

$(context).children(":[attributename]");

当你这样做...

$(":[attributename]",context)

......这只是一种迂回的方式......

$(context).find(":[attributename]")

...这更清楚地显示了正在发生的事情。您正在搜索所有后代。

于 2012-04-17T13:32:38.817 回答
0

您是指>仅选择直接后代元素的选择器吗?

$("> div[attributename=xyz]",context);

请阅读此答案下方的评论!

于 2012-04-17T13:32:51.860 回答