我有一个简单的javascript函数,它用任何span.certain_class替换“y”字符并带有“i”:
$(document).ready(function() {
$('span.certain_class').each(function() {
$(this).text($(this).text().replace(/y/ig, function(s) {
return (s === 'Y' ? 'I' : 'i');
}));
});
});
我遇到的问题是我想用一个span来包装被替换的角色:
<span>i</span>
当我这样做时,浏览器会将标签打印为字符串,而不是将它们解析为HTML代码。
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:2)
尝试
$(this).html($(this).text().replace........
这将使结果解析为HTML而不是纯文本。
答案 1 :(得分:1)
使用$(this).html(...)
代替.text()
来设置内容。您可能还希望在阅读要替换的内容时使用html
(取决于您在场景中的内容)。
答案 2 :(得分:1)
您应该只需将第一次通话更改为text()
即可拨打html()
:
$(this).html($(this).text().rep...
答案 3 :(得分:1)
$(document).ready(function() {
$('span.certain_class').each(function() {
$(this).html($(this).text().replace(/y/ig, function(s) {
return (s === 'Y' ? 'I' : 'i');
}));
});
});
将$(this).text更改为$(this).html