Javascript 替换为在 IE 11 中不起作用的正则表达式

标签 javascript internet-explorer-11

由于我的公司正尝试从 IE8 升级到 IE11,因此我在一些遗留代码中遇到了一些 javascript 问题。我有一段 javascript 可以找到字段中的所有逗号并将其替换为几个字符,如下所示:

document.frm.txt_fieldValue[1].value = 
document.frm.txt_fieldValue[1].value.replace(/,/gi, "$0");

然而,在我的代码中,这一切都在一行中。此代码适用于 IE8、Chrome 和 Firefox。但是,在 IE9+ 中,特别是 IE11(因为这是我公司要升级到的版本),此代码不会替换任何逗号。我可以使用以下代码来替换单个逗号:

document.frm.txt_fieldValue[1].value = 
document.frm.txt_fieldValue[1].value.replace(",", "$0");

因为我替换了一个逗号,所以我知道我的代码已经到达。但是我四处搜寻,但还没有找到可靠的答案。还有其他人有这个问题吗?如果是这样,有没有人找到解决方案?

谢谢!

最佳答案

需要替换成“$$0”,转义后变成真正的$0。我怀疑这段代码是否在任何浏览器上都能正常工作。

关于Javascript 替换为在 IE 11 中不起作用的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26407665/

相关文章:

vb6 - 在 Windows 10 中使用 vb6 进行 webautomation 时出错

html - 展开时无法在 IE11 中更改下拉边框颜色

javascript - IE 11 错误消息 - 由于错误 800a025e,无法完成操作

javascript - 如何将 babel 与 webpack 一起使用以实现 ie11 兼容性

javascript - JS MVC 游戏动态对象?

javascript - typescript 将 `interface` 键作为字符串的并集传播

javascript - 求和一个数,直到变成一位数 JS

javascript - 使用javascript从xml中删除子节点

jQuery 在 IE11 中未定义异常

javascript - 文本文件导入在 EaselJS 中不起作用