【发布时间】:2014-05-08 19:36:06
【问题描述】:
我有一个包含多个“â”字符的字符串,所以我创建了这个 jquery 函数来替换它们(不能在服务器端执行)。
$(document).ready(function() {
$('#tab-3').click(function(){
$('#tab-3').html($('#tab-3').html().replace(/â/g, '•'));
});
});
现在,如果我在控制台中运行此代码 $('#tab-3').html($('#tab-3').html().replace(/â/g, '•'));,则它可以工作,但不能在页面上运行。
不得不说我是通过curl得到字符串的,字符是这样的,而不是â
有什么想法吗?谢谢!
更新 1:
试过这个:
setTimeout(function() {
alert('mda');
console.log($('#tab-3').html());
$('#tab-3').html($('#tab-3').html().replace(/â/g, '•'));
}, 0);
Alert 有效,html() 在控制台显示内容,最后一个失败。
我开始认为是浏览器打印了 â 字符,可能是â
现在就试试这个理论!
更新 2
不起作用,尝试使用 â 而不是 ...
另一个有趣的事情..如果我这样做:
setTimeout(function() {
console.log($('#tab-3').html().replace(/â/g, '•'));
});
或使用â而不是â,它会按原样打印字符串...只有当我在浏览器中再次运行相同的代码时它才能工作...
我不知道下一步该做什么..
这是一个截图,证明它在浏览器中有效(上面的红色文本是我在 setTimeout 函数中所做的 console.log...
【问题讨论】:
-
究竟是如何使用 cURL 获取元素的,是否涉及 ajax?
-
通过帖子,作为一个包含字符串的数组......你无能为力
-
确保在
ajax/content added之后调用替换函数 -
我试过 $(document).ajaxComplete(function(){});无济于事...还有其他想法吗?:(
-
顺便说一句,控制台不会产生错误。
标签: javascript jquery special-characters