IE9 javascript替换不起作用

时间:2012-03-02 18:05:29

标签: javascript replace internet-explorer-9

我有一个字符串,例如“Value = $ val $”,我想用“$ 0.00”之类的值替换$ val $

所以最终字符串看起来像“Value = $ 0.00”

这适用于firefox和IE 7以及IE 8,但在IE 9中不起作用任何想法为什么?以及我如何解决这个问题?

$ 0.00以外的任何价值(例如$ 5.00)都可以毫无问题地工作。

<击> http://jsfiddle.net/jhdVV/5/

编辑:更新了文本框和按钮的链接以使用差异值进行测试。

http://jsfiddle.net/jhdVV/10/

在IE 9中,我得到“Value = $ val $ .00”

浏览器处于标准模式。

注意: 我正在研究遗留代码,所以理想情况下我想远离诱人的jquery解决方案。

2 个答案:

答案 0 :(得分:5)

你有什么理由不这样做吗?

function replaceValue(source, find, replacement) {
    return source.replace(find, replacement);
}

答案 1 :(得分:2)

替换文本中的$0本质上是一个未初始化的变量,其行为未定义。所以,逃避美元符号:

$$0.00