如何unescape JSON输出?

时间:2015-02-08 23:26:00

标签: jquery json

我的服务器应该返回一个URL字符串,以传递给我的Ajax调用的Success方法。我想要做的就是使用此URL执行简单的重定向,但从服务器返回的字符串看起来很奇怪。

以下是从服务器返回的内容:

"products\/1\/volvo-xc90-t6"

从服务器返回此代码的代码是:

<cfreturn "products/#rsProduct.ProductID#/#rsProduct.ProductTitle#" />

所以我得到的所有内容包括双引号和转义斜线。当我将此字符串的一部分包含在此代码中时,重定向使用此字符串失败:

success: function (result) {
        window.location.replace(result);
}

如何正确格式化字符串?我的服务器端需要解决这个问题,还是我的JQuery错了?

1 个答案:

答案 0 :(得分:1)

您可以替换前端的额外斜线,如下所示:

success: function (result) {
    window.location.replace(result.replace('\/', '/'));
}

更新: 我忘了提及window.location.replace将从历史记录中删除上一页,因此用户无法单击浏览器的后退以返回到上一页。要保留历史记录,请使用window.location.href = result.replace('\/', '/')