我试图让以下代码正常工作,这应该是'扫描{count},然后将其替换为数字' 1'。
完整代码:
http://jsbin.com/miciqe/7/edit
段:
$('#data').html( function() {
$(this).html().replace('{count}', '1');
});
看起来很简单,将html设置为(获取html的函数,替换,返回结果值)。
无法弄清楚我的生活中出了什么问题。
有人能指出“希望'明显?
更新
感谢bic, 以下工作代码示例:Solution 1,Solution 2(推荐)
P.S。我将其更改为regexp,以便在字符串中替换{count}的所有出现。
答案 0 :(得分:3)
您需要返回字符串:
$('#data').html( function(index, oldHtml) {
return oldHtml.replace('{count}', '1');
});
使用您的方法,而不是默认传入的参数:
$('#data').html(function () {
return $(this).html().replace('{count}', '1');
}
答案 1 :(得分:0)
您的闭包不会返回任何值设置为html,您的代码应为:
$('#data').html( function() {
return $(this).html().replace('{count}', '1');
});
答案 2 :(得分:-1)
当你怀疑时,这是一个非常小的问题。您正在将{count}替换为1,但不会将其重置。请尝试以下方法:
$('#data').html( function() {
$('#data').html($('#data').html().replace('{count}','1'));
});