一品网
  • 首页

转 jquery获取两个标签之间文本


https://blog.csdn.net/u010403387/article/details/44197629?utm_source=blogxgwz8

如以下代码所示,id为tidy的标签中既存在标签,又存在“This is some text”的文本。那么问题来了,怎么用jquery只取“This is some text”的文本,而不取里的内容?


First span text
This is some text Second span text

方法一:使用.html()取到a标签中的所有内容后,用正则表达式筛选出不被有"<"、">标签包围的内容,并去掉换行符。

$("#tidy").html().replace(/<.*>*<.*>|\s/g,"");

评价:初步达到目标,解决问题的工具更多还是正则表达式,并且由于正则表达式的制约,该方法适用性较窄。


方法二:复制整个,然后去掉a标签的子标签,再用.text()获得所需文本。

$("#tidy")
.clone()//复制a标签
.children()//找到所有子标签
.remove()//删除所有子标签
.end()//退回上一匹配元素
.text();//取到所需文本

评价:达到目标,但是对原表签的操作是只读的,不能对原标签中的文本进行修改。

方法三:复制整个,然后去掉a标签的子标签,再用.text()获得所需文本。


$("#tidy").contents().filter(function(){
return this.nodeType == 3;
})[0].nodeValue = "The text you want to replace with"


评价:达到目标,能对原标签中的文本进行读写操作,但是nodeValue是js的属性。

js

相关


在虚拟机(centos)上安装或卸载nodejs

js 正则匹配 两个字符串之间,某个字符串之前(之后)的内容

sql server2016里面的json功能 - 转

cefSharp通过js操控页面,含跨域操控

angularjs $emit $on $broadcast 父子 兄弟之间传值

渡一 3-2 js基础知识

js 校验身份证号码

nodejs 一个简单的web服务器,用于前端自己快速测试部署

11-15.JS轮播、专辑、放大镜

JS值传递与引用传递

[转]Vue-cli3.x引入本地json报404 解决方案

extjs ajax 同步 及 confirm 确认提示框问题

标签

一品网 冀ICP备14022925号-6