如何从jQuery中的parseJSON结果中获取转义的URL?

时间:2013-09-23 22:56:07

标签: jquery

我当前的代码使用json,返回的结果如下所示:

{"1379973204_SimonHead.JPG":"http:\/\/localhost\/wp-content\/plugins\/userpro\/uploads\/temp\/1379973204_SimonHead.JPG"}

我的问题是如何从该结果中查找和检索网址?另请注意斜杠,我希望能够获得一个干净的格式化网址,以便在我的应用中使用它。

我通过以下方式获得了上述数据:data = jQuery.parseJSON(JSON.stringify(data));

感谢任何帮助

3 个答案:

答案 0 :(得分:0)

使用JSON.parse。它将返回一个javascript对象。大多数浏览器现在都支持这种,因此不需要使用jQuery.parseJSON http://caniuse.com/#feat=json

如果您的网址仍然被转义,则您会在某处对数据进行双重编码。

例如:

var data = JSON.parse(yourjson);
var url = data["1379973204_SimonHead.JPG"];

答案 1 :(得分:0)

对json进行字符串化,然后使用正则表达式

var string = JSON.stringify('{"1379973204_SimonHead.JPG":"http:\/\/localhost\/wp-content\/plugins\/userpro\/uploads\/temp\/1379973204_SimonHead.JPG"}');
var url = string.match("http:(.*\.[a-z]{3})")[0]
console.log(url)

答案 2 :(得分:0)

尝试使用生成的数据对象执行以下操作:

var expectedURL = data["1379973204_SimonHead.JPG"].replace('\\/','/');

现在正在执行console.log(expectedURL)打印以下内容:

http://localhost/wp-content/plugins/userpro/uploads/temp/1379973204_SimonHead.JPG