删除放大器;来自javascript中的字符串

时间:2014-09-25 12:17:28

标签: jquery asp.net-mvc razor

我将预制的URL字符串作为模型传递给我在MVC项目中的视图。

我将URL作为encodedURIComponent传递给我的控制器:

window.location = '@Url.Content("~/Default/UserAgreement?registerData=")' + encodeURIComponent(jsonHttp);

然后我将字符串作为模型传递

   public ActionResult UserAgreement(String registerData)
    {
        return View(null, null, System.Uri.UnescapeDataString(registerData));
    }

然后,当我尝试记录它时,我无法摆脱&这些工作:

var urlString = '@Model'.replace("&", "&");
console.log(urlString);

var urlString = decodeURIComponent('@Model');
console.log(urlString);

我做错了什么?

1 个答案:

答案 0 :(得分:5)

您可能只需要在正则表达式上使用global修饰符替换/g,否则它只会替换&的第一个实例:

var urlString = '@Model'.replace(/&/g, '&');
console.log(urlString);

摘录示例:

var str = 'Something & Else && Here';
alert( str );
alert( str.replace(/&/g, '&') );