IE9 javascript替换不起作用

IE9 javascript替换不起作用,javascript,replace,internet-explorer-9,Javascript,Replace,Internet Explorer 9,我有一个字符串,比如“Value=$val$”,我想用一些值替换$val$,比如“$0.00” 所以最后一个字符串可以像“Value=$0.00” 这在firefox、IE7和IE8中有效,但在IE9中不起作用。你知道为什么吗?我怎样才能解决这个问题 除$0.00(例如$5.00)以外的任何值均无任何问题 编辑:使用文本框和按钮更新链接,以测试差异值 在IE 9中,我得到“Value=$val$.00” 浏览器处于标准模式 注: 我正在研究遗留代码,因此,理想情况下,我希望远离诱人的jqu

我有一个字符串,比如“Value=$val$”,我想用一些值替换$val$,比如“$0.00”

所以最后一个字符串可以像“Value=$0.00”

这在firefox、IE7和IE8中有效,但在IE9中不起作用。你知道为什么吗?我怎样才能解决这个问题

除$0.00(例如$5.00)以外的任何值均无任何问题

编辑:使用文本框和按钮更新链接,以测试差异值

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

浏览器处于标准模式

注:
我正在研究遗留代码,因此,理想情况下,我希望远离诱人的jquery解决方案

你为什么不这么做

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

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

$$0.00

我不知道解决办法,但问题是$0是正则表达式。@Boo谢谢你指出$0。我尝试了0.00美元,IE9正确地替换了它。但我是先用\\$逃出$。似乎是一个IE9错误??:-/谢谢你的启发。出于某种原因,我认为我需要摆脱那些特殊的字符。我尝试了你的代码,它工作了。如果有人回答为什么我的代码在IE9中表现异常,我会等一天,如果我没有得到任何令人满意的答案,我会标记你的答案。同时,+1给你..谢谢你的解释。添加额外的$sign成功了。