使用dojo删除Para标记

时间:2013-02-01 07:23:28

标签: javascript html regex dojo

我的页面内容使用para标签呈现。数据来自外部URL。我必须在使用dojo在页面上呈现后剥离p标记。例如

<div class="truncateP">
        <p>The Stackoverflow is awesome</p>
</div>

我的页面正在显示&#39; p stackoverflow很棒/ p&#39;我必须使用道场剥离。 我只想得到没有para标签的stackoverflow很棒。

2 个答案:

答案 0 :(得分:1)

在Regexpal上试过这个:

  • 搜索字符串:\<p\>(.*)\</p>
  • 替换字符串:\1

希望它适合你。

答案 1 :(得分:0)

您可以搜索并替换div元素。例如:

<div class="truncateP">
    <p>The Stackoverflow is awesome</p>
</div>
<script type="text/javascript">
    require([
        "dojo/ready",
        "dojo/query",
        "dojo/dom-attr"
    ], function(ready, $, domAttr){
        ready(function(){ // Wait till the page is rendered
            var div = $(".truncateP");
            if(div.length > 0){ // check that the div is found
                var html = domAttr.get(div[0], "innerHTML");
                html = html.replace(/\<p\>|\<\/p\>/g,"");
                domAttr.set(div[0], "innerHTML", html);
            }
        });
    });
</script>

有很多警告:

  1. 如果要从外部网址加载,则必须确保在尝试更改内容之前加载内容并将其呈现到屏幕上。使用ready()是不够的。
  2. dom查询正在搜索class = truncateP。如果页面上有多个该类,那么只会解析第一个。
  3. 它将删除内容中的所有段落元素。