我收到了其他人的惊人的帮助,关于使用jquery查找和替换文本.
$("*").each(function () { if ($(this).children().length == 0) { $(this).text($(this).text().replace('Subject:','Name:')); } });
而且这个功能奇妙.
我遇到的唯一问题是替换在页面加载后加载的文本.
我有一些javascript功能,从服务器显示数据,但只有在页面加载所有元素之后.例如,用户从启动事件的下拉列表中选择一个值,以从数据库加载产品列表.
我格式化了一些这样的产品:
奶奶史密斯苹果
价格:x.xx每磅
营养事实….
我只想找到一个替换“价格:”,并可能用“成本:”替换.
但是正如我所提到的那样,这些数据尚未加载.只有在用户从下拉菜单中选择“Granny Smith Apples”后才显示.
这是我必须住的极限吗?
解决方法
您可以尝试将事件附加到
ajaxStop
event以及加载:
function replaceText() { var jthis = $(this); $("*").each(function() { if(jthis.children().length==0) { jthis.text(jthis.text().replace('Subject:','Name:')); } }); } $(document).ready(replaceText); $("html").ajaxStop(replaceText);