.replace问题

时间:2010-09-30 00:13:19

标签: javascript jquery

我遇到html().replace

的问题
<script type="text/javascript">
  jQuery(function() { 
  jQuery(".post_meta_front").html(jQuery(".post_meta_front").html().replace(/\<p>Beschreibung:</p> /g, '<span></span>'));
});
</script>

我的剧本有什么问题?

3 个答案:

答案 0 :(得分:4)

为什么要使用正则表达式?

如果要将元素替换为其他元素,可以使用jQuery's .replaceWith() method

jQuery(".post_meta_front p:contains('Beschreibung:')")
                                               .replaceWith('<span></span>');

或者,如果您需要确保内容完全匹配:

jQuery(".post_meta_front p").filter(function() {
    return $.text([ this ]) === 'Beschreibung:';
}).replaceWith('<span></span>');

答案 1 :(得分:1)

您需要在正则表达式部分中转义正斜杠/

<script type="text/javascript">
  jQuery(function() { 
  jQuery(".post_meta_front").html(jQuery(".post_meta_front").html().replace(/<p>Beschreibung:<\/p> /g, '<span></span>'));
});
</script>

答案 2 :(得分:0)

看起来你没有转义replace函数的find参数中的所有特殊字符。你只是逃脱了第一个<字符。

尝试类似:

/\<p\>Beschreibung:\<\/p\>/g

请注意,replace是javascript而不是jQuery的函数。