【发布时间】:2015-10-23 19:21:10
【问题描述】:
这就是我在 jQuery 中所做的:
var text2 = $(node).not("span").text();
console.log(text2);
我如何在纯 javascript 中做同样的事情?
我知道如何在 javascript 中获取元素,但不知道如何忽略元素并选择其余元素
var spans = node.getElementsByTagName('span');
我需要获取node 中不包含<span> 的所有元素
这是我的 HTML
<tr>
<td>
<span>Farley</span>
<div class="table-row__expanded-content">
<data-key>Sex: </data-key> <data-value>Male</data-value><br />
<data-key>DOB: </data-key> <data-value>12/08/2010</data-value> <br />
<data-key>Weight: </data-key> <data-value>20 lbs</data-value> <br />
<data-key>Location: </data-key> <data-value>Kennel 2B</data-value> <br />
<data-key>Temperament: </data-key> <data-value>Aggresive</data-value> <br />
<data-key>Allergies: </data-key> <data-value>Sulfa, Penicillin, Peanuts</data-value>
</div>
</td>
<td>Cunningham, Stephanie</td>
<td>Dog</td>
<td>Pomeranian</td>
<td>PQRST1234567</td>
</tr>
【问题讨论】:
-
你不能用香草。你获取 gEBTN() 结果,循环它们,然后过滤掉你不想要的东西。
-
node.querySelectorAll(":not(span)") -
not不是这样做的。 -
一个问题是为什么?这只是一个练习吗?您的意思是节点的所有不包含跨度的直接子元素吗?
-
我认为没有过滤匹配它的元素的当前 jquery 对象。那么 $(node).not("span") 不会只是从该 jquery 对象中过滤出任何 span 元素,而不是查看该对象中包含 span 元素的元素吗?
标签: javascript jquery arrays object javascript-objects