在整个html本身中查找并替换字符串的出现

时间:2014-09-10 16:00:56

标签: javascript jquery html

假设

<html>  
<head>....</head>
<body>
 .
 .  // Occurrences are here
 .  
</body>
</html>

我做了

$(function()
{
    $('html').html() = $('html').html().replace(/strToFind/g,'somethingElse');
});

头脑中,但它确实有效。我如何在html文档中找到并替换所有出现的字符串(不存储在变量中)? 感谢

4 个答案:

答案 0 :(得分:3)

.html()是一个返回HTML的函数,您无法分配给它。如果要在jQuery中更改对象的HTML,可以将新HTML作为参数添加到函数中:

$('html').html($('html').html().replace(/strToFind/g,'somethingElse'));

答案 1 :(得分:0)

$('html').html()会返回html字符串,但不会设置它。

您可以使用此功能

function rep_all()
{
    var str = $('html').html();
    str.replace('strtofind','strtoreplace');
    $('html').html(str);
}

答案 2 :(得分:0)

.html()是在html页面上写的,它不像变量,所以你不能为它分配任何一个。你需要将值放在其中。就像这样:

$('html').html( $('html').html().replace(/strToFind/g,'somethingElse'));

见这里:http://api.jquery.com/html/

答案 3 :(得分:0)

已经回答.html()不可分配,您必须将替换的内容作为参数传递。

需要指出的是, 非常 不常替换整个网页的html内容。

当您定义要替换的内容位于body内时,您至少应该(仍然不好)仅定位body

$('body').html($('body').html().replace(/strToFind/g,'somethingElse'))