我正在使用VisualForce页面(SalesForce相关),我需要编写一段JavaScript,在所有内容加载后将替换页面上的一些文本。
我尝试了以下内容(我在页面的其他部分使用jQuery,所以我也使用了jQuery):
var j$ = jQuery.noConflict();
j$(document).ready(function()
{
var replaced = $find("body").html().replace('Test', '1234');
$("body").html(replaced);
});
不幸的是它似乎没有做任何事情。这就像我无法获取页面HTML代码。我假设它是因为这是在Force平台上运行的VisualForce页面,所以如果有人可以提供任何帮助,那将非常感激。
感谢。
P.S。如果有人想知道为什么我这样做是因为我不能通过VisualForce或Apex这样做,因为我试图忽略变量提供的一些HTML字符并在dataTable标头中使用。不幸的是,dataTable标头中的所有内容都会自动转义。
答案 0 :(得分:1)
首先,它应该是$ .find()但是哼..也没必要:只需要选择器的$(“body”)。
然后在一行中你可以写:
$("body").html($("body").html().replace(/test/g, '1234'));
注意/ g在正则表达式中,它应该允许它替换所有测试实例,而不仅仅是第一个。
您可能还需要精确地使用j $并在任何地方使用它,而不仅仅是文档就绪事件。上面的行使用$ shortcut。