如何查找文本并使用jQuery替换
我试图找到一个解决方案来搜索DOM中包含的文本字符串“Tony”,并将其替换为文本字符串“Tiger”。
任何人都有任何洞察或想法如何这样做? 我猜这将需要每个语句加上替换function,可能包含?
谢谢杰克
您可以使用它来搜索body元素的所有子元素并替换文本…
$('body').children().each(function(){$(this).text( $(this).text().replace('Tony','Tiger') )});
它使用jQuery。 它也应该只改变元素的文本内容而不改变HTML格式……
您还可以使用此方法使用RegExp并获取所有嵌套元素:
$('body').html( $('body').html().replace(/Tony/gi,'tiger') );
页面宽,你可以使用这样的东西:
var $body = $('body'); var html = $body.html(); var newHtml = html.replace('Tony', 'Tiger'); $body.html(newHtml);
或者,如果您有一个更具体的容器,请使用jQuery选择该子容器并执行相同的操作。
无论哪种方式,它都是一种霰弹枪方法。 它将更改可见文本和html元素属性中的字符串。 如果在某些位置需要忽略字符串,则可能需要更详细的方法。
是否可以将其与服务器端解决方案相结合? 您可以使用特殊类来包装单词服务器端的每个出现,例如texttoreplace
。
在结果类上运行javascript替换只会加快速度。