jquery 获取直接下级的text-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

jquery 获取直接下级的text

2016-03-23 15:11:36 1935 1
<p>
aaaaa
<div>bbbbb</div>
ccccc
<div>ddddd</div>
eeeee
</p>

如何能只取p标签里的文本也就是aaaaabbbbbccccc,
如果直接用jquery的text()方法会将div里的文本也取出来。
最好不要采用删除div标签的方式,也不要采用html()出来所有文本,再用正则去筛选。
谢谢!

取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:11:13

    首先在p里面嵌套div是不正确的做法。
    你可以试试 $('p').length//2
    因为浏览器会自动进行纠错如下(Chrome):

    <p>
    aaaaa
    </p>
    <div>bbbbb</div>
    ccccc
    <div>ddddd</div>
    eeeee
    <p></p>

    另外aaaaa,eeeee建议用span或者p包含起来。直接的文字节点不符合语义的做法。而且在进行DOM处理时会增加一些工作,这里文字左右是不可见的换行符。最重要的是,jQuery中的选择器是不会选择文本节点的,只能使用contents+filter了,使用contents操作有性能有影响,慎用。

    将p改成div时可以这样做:

    <div id="el">
    aaaaa
    <div>bbbbb</div>
    ccccc
    <div>ddddd</div>
    eeeee
    </div>​
    全选复制放进笔记var $rs = $('#el').contents().filter(function() {
        return this.nodeType === 3;
    });
    
    var text = $rs.text();
    $('#el').after(text);​//注意文字周围有换行符,需要再处理一下。
    0 0
相关问答

1

回答

关于jquery的在没有id的情况下获取text内容的问题

2016-06-06 10:18:07 1299浏览量 回答数 1

1

回答

jquery ajax 报错

2016-07-29 12:07:14 1642浏览量 回答数 1

1

回答

jquery中的ajax的请求出现问题

2016-07-14 16:58:18 2055浏览量 回答数 1

1

回答

jquery mobile ajax 请求,弹出提示框

2016-07-05 17:07:35 1923浏览量 回答数 1

1

回答

jquery里面用 $.ajax post文件

2016-05-30 08:52:21 2867浏览量 回答数 1

1

回答

jquery+ajax边输入边提示像百度那样。是如何对后台数据库的数据进行模糊匹配,对于jsp这个是怎么实现的!

2016-05-30 09:24:50 1844浏览量 回答数 1

1

回答

jquery $.ajax如果传递数组到后端?

2016-05-30 09:35:31 1894浏览量 回答数 1

1

回答

怎么将jquery的ajax中发送3个字符串和一个数组传递到springMVC的对应方法中

2016-05-30 14:08:29 2958浏览量 回答数 1

1

回答

Jquery AJAX如何使用Promise/Deferred实现顺序执行?

2016-05-27 09:53:33 3131浏览量 回答数 1

1

回答

使用jquery ajax刷新出来的数据,是不是就无法再调用jquery?

2016-05-27 08:54:31 1655浏览量 回答数 1
2709
文章
6591
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载