Javascript 为特定单词添加span
我试图给一个特定的词加上一个span,如下所示:Javascript 为特定单词添加span,javascript,jquery,regex,Javascript,Jquery,Regex,我试图给一个特定的词加上一个span,如下所示: var value = "eror"; var template = "/(" + value + ")/g"; $("#content").html($("#content").html().replace(template, '<span class="spell_error">$1</span>')); var value=“eror”; var template=“/(“+value+”)/g”; $(“#con
var value = "eror";
var template = "/(" + value + ")/g";
$("#content").html($("#content").html().replace(template, '<span class="spell_error">$1</span>'));
var value=“eror”;
var template=“/(“+value+”)/g”;
$(“#content”).html($(“#content”).html().replace(模板“$1”);
这是我的名片。我尝试使用我在这里看到的解决方案,但似乎不起作用。知道为什么吗?
谢谢您混淆了正则表达式文字和字符串 使用此选项创建正则表达式:
var template = new RegExp("(" + value + ")", 'g');
正则表达式文字如下所示:
/(something)/
没有报价。但由于它是一个文本,您不能用代码构建它,因此必须使用RegExp
构造函数
附带说明:通过使用函数作为回调函数的变量,您的替换件将变得更轻,更重要的是,更干燥:
$("#content").html(function(_,html){
return html.replace(template, '<span class="spell_error">$1</span>')
});
$(“#内容”).html(函数(#,html){
返回html.replace(模板“$1”)
});
您混淆了正则表达式文字和字符串
使用此选项创建正则表达式:
var template = new RegExp("(" + value + ")", 'g');
正则表达式文字如下所示:
/(something)/
没有报价。但由于它是一个文本,您不能用代码构建它,因此必须使用RegExp
构造函数
附带说明:通过使用函数作为回调函数的变量,您的替换件将变得更轻,更重要的是,更干燥:
$("#content").html(function(_,html){
return html.replace(template, '<span class="spell_error">$1</span>')
});
$(“#内容”).html(函数(#,html){
返回html.replace(模板“$1”)
});
Ohhh,我把事情搞砸了。非常感谢。还感谢您建议使用回调。非常感谢。哦,我把事情搞砸了。非常感谢。还感谢您建议使用回调。非常感谢。