javascript - 如何使用自己的 <p> 标签包装由 <br><Br> 分隔的文本节点?

标签 javascript jquery html web-services

我从无法修改的网络服务返回内容,该内容返回如下数据:

<div id="entrance" style="">
    Habilitação / Diploma de Ensino Medio Diploma de Ensino Pre Universitario 
    <br>
    <br>
    Diploma Record of study 
</div>

如何使用 jQuery 将两个句子包装在单独的

标记中?我知道我可以使用 .wrap 但这会包装整个内容。我需要正则表达式吗?

谢谢, 托马斯

更新:

我的要求更改为需要一个列表而不是段落,因此使用下面的答案,我稍微修改了它以将其包装在

  • 中,然后将整个内容包装在

      jQuery('#entrance').show();
      jQuery('#entrance').html(data).contents().each(function () {
      if ( this.nodeType === 3 ) jQuery( this ).wrap( '<li />' );
          else jQuery( this ).remove();
      });
      jQuery('#entrance').wrapInner('<ul />');
      

  • 最佳答案

    怎么样:

    $( '#entrance' ).contents().each(function () {
        if ( this.nodeType === 3 && $.trim( this.data ) !== '' ) {
            $( this ).wrap( '<p />' );
        } else {
            $( this ).remove();
        }
    });
    

    现场演示: http://jsfiddle.net/ZMD6m/5/

    我的代码将所有非空文本节点转换为包含该文本的段落。所有其他类型的节点都将被删除。

    关于javascript - 如何使用自己的 <p> 标签包装由 <br><Br> 分隔的文本节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11852883/

    相关文章:

    javascript - 如何在 url 中制作没有 # 的单页网站,如 exp.com/sec1 而不是 exp.com/#sec1

    Python BeautifulSoup Mix 匹配表中的项目

    javascript - Node.js:获取客户端的 IP

    javascript - 我在 fragment 中有一个复选框,我希望它在单击注册按钮时发布一些数据这个按钮在我的主要 Activity 中?

    javascript - 如何在不使用TableTool的情况下从jquery数据表中获取选定的行索引

    javascript - 切换多个 div 对的可见性?

    html - 叠加背景颜色和图像

    javascript - Safari 中的 Google Adsense、CORS 和 Rails 转储了数千个控制台错误

    javascript - 如何关注具有相同类的 img

    javascript - 单击更改鼠标指针并返回释放