Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript替换函数与全局集不适用于firefox版本14_Javascript_Jquery_Regex_Replace_Replacewith - Fatal编程技术网

JavaScript替换函数与全局集不适用于firefox版本14

JavaScript替换函数与全局集不适用于firefox版本14,javascript,jquery,regex,replace,replacewith,Javascript,Jquery,Regex,Replace,Replacewith,我正在使用replace函数全局替换用户的配置文件路径 user.profile\u路径的值类似于http://mysite/user/profile/XXXXXX 代码如下所示: .replace(/{:profile_path}/g,user.profile_path) 它在IE、chrome和最新的Firefox浏览器中运行良好。但当我在Firefox版本14中尝试同样的功能时,替换功能不起作用。我搜索发现,并不是所有的浏览器都支持用“g”替换,这不是web标准。然后,我尝试为相同的对象

我正在使用replace函数全局替换用户的配置文件路径

user.profile\u路径的值类似于
http://mysite/user/profile/XXXXXX

代码如下所示:

.replace(/{:profile_path}/g,user.profile_path)
它在IE、chrome和最新的Firefox浏览器中运行良好。但当我在Firefox版本14中尝试同样的功能时,替换功能不起作用。我搜索发现,并不是所有的浏览器都支持用“g”替换,这不是web标准。然后,我尝试为相同的对象提供正则表达式,如:

var regProfPath = new RegExp("{:profile_path}","g");
.replace(regProfPath,user.profile_path)
这也没有全局替换配置文件路径

任何帮助都将不胜感激。

不确定您要在多大范围内更换此设备;但是,假设您要将其替换的页面上的HTML内容位于
DIV
中,并使用class
.content
,您可以使用:

var user = {},
    content = $('.content').html();

user.profile_path = "http:\/\/mysite\/user\/profile\/XXXXXX";

$('.content').html(content.replace(/\{\:profile_path\}/gm, user.profile_path));

在FF 14中进行了专门测试,并取得了良好效果。看起来很可能是
}
的逃逸。即使我添加了
m
(多行)修饰符,我也不认为这有什么效果;只是把它放进去,因为我认为如果你在字符串化的HTML中全局替换,你可能要处理一个大的多行字符串。

你只是想覆盖
http://mysite/user/profile/XXXXXX
使用
{:profile\u path}
?是的,我的html中没有几个地方需要替换{:profile\u path}使用正确的概要文件路径。实际上,相同的名称可以正常工作,因为我已经为名称容器提供了标题,它具有类似{:display_name}的模式,并且被正确替换了两次。。。只有{:profile\u path}模式没有被替换,而且我没有任何线索,因为两者都使用相同的逻辑。我想你会想逃离花括号
\{:profile\u path\}
对不起,你提到要逃离哪里了?在第一个选项ie中,替换(/{:profile_path}/g,user.profile_path)或在新的RegExp()中??