0

我正在使用以下 jQuery 代码从特定 div 中删除文本“(2012)”。

var el = $("#myDiv");  
//replace(/word to remove/ig, "");  
el.html(el.html().replace(/(2012)/ig, ""));  

这在删除 2012 时效果很好,但括号 () 仍然存在。我如何告诉 jquery()不是代码,而是我希望删除的文本?

4

3 回答 3

3

试试这个:.replace("(2012)","")

这么简单的事情不需要正则表达式。

于 2012-12-29T03:12:00.857 回答
2

只需使用反斜杠转义括号

var el = $("#myDiv");  
//replace(/word to remove/ig, "");  
el.html(el.html().replace(/\(2012\)/ig, ""));

这是它的一个例子

此外,您可以像这样简化它:

var el = $("#myDiv");
el.replaceWith("");

jsFiddle 示例

编辑 3

感谢 Ryan 指出 i 不是必需的。同样经过进一步考虑,我意识到您可能在 div 中包含更多内容,而不仅仅是日期,在这种情况下,以下代码应该最适合您:

var el = $("#myDiv");
el.html(el.html().replace(/\(2012\)/, ""));

jsFiddle 示例

于 2012-12-29T03:17:45.743 回答
0

转义括号:

var str = "hello(2012)";
console.log(str.replace(/(\(2012\))/,''));​​​​​​
于 2012-12-29T03:12:10.730 回答