如何使用jQuery获得元素的文本兄弟
How to get text sibling of element using jQuery?
我正在抓取一个网站,我发现了这个
<table>
<tr>
<td>
<b>Status:</b>ACTIVE;
<b>Type:</b>CN - CONSTRUCTION
<b>Added:</b>02/24/2012
</td>
</tr>
</table>
如何分别得到status
, type
和added
?
我知道我会得到否定,因为我没有发布任何尝试过的代码…但我甚至不知道该尝试什么!
这个网站有很差的HTML结构,我似乎找不到任何方法。
- 使用
jQueryElement.text()
抓取所有文本。 - 使用
String#spplit
分割字符串
var text = $('#content').text();
var split = text.trim().split(''n');
split.forEach(function(el) {
var splitAgain = el.split(':');
console.log("Key: " + splitAgain[0].trim() + " Value: " + splitAgain[1].trim());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
<tr>
<td id="content">
<b>Status:</b>ACTIVE;
<b>Type:</b>CN - CONSTRUCTION
<b>Added:</b>02/24/2012
</td>
</tr>
</table>
Javascript nextSibling
属性获取元素的下一个文本兄弟。您可以在td
中选择b
元素,并获得它的下一个文本。
$("td > b").each(function(){
console.log(this.innerText +" = "+ this.nextSibling.nodeValue.trim());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>
<b>Status:</b>ACTIVE;
<b>Type:</b>CN - CONSTRUCTION
<b>Added:</b>02/24/2012
</td>
</tr>
</table>
相关文章:
- 如何使用jquery在填充自动完成的值后使文本框只读
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 用程序搜索JQuery数据表中的文本
- jQuery匹配JSON对象的部分文本
- onkeyup无法动态创建多个文本区域
- 如何在下面的ES6循环中获得前面的文本
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 借助asp.net验证或java脚本对多个文本进行验证
- 无法在ajaxStart中更改跨度文本
- 高亮显示时编辑文本大小和颜色
- jquery中的文本框验证
- 根据兄弟中的一个的文本内容选择兄弟dom元素
- XPath来查找具有文本+其所有子代的节点&符合某些标准的兄弟姐妹
- HTML内联节点与文本兄弟错位
- 如何使用jquery在span中获取元素的兄弟文本
- 在没有插件的按钮兄弟中复制文本
- 如何使用jQuery获得元素的文本兄弟
- D3选择基于文本,但需要兄弟元素