使用SWFupload上传文件成功后的JS回调函数,如果返回值是JSON格式,那么就需要解析JSON。
Parse JSON 可以通过JSON官网的JS来解析,如JSON.parse(data) 或者你已经在jQuery里了,如jQuery.parseJSON(t); 使用 JSON 解析器将 JSON 转换为 JavaScript 对象是比较安全的做法。
其实最简单的方法就是通过JS原生的eval函数来解析,eval() 函数可编译并执行任何 JavaScript 代码。
var obj = eval (“(” + data + “)”);
就可以得到JavaScript 对象 obj。
SWFupload 回调 parse JSON 样例
upload_success_handler :function(file, data, resp){
$.getJSON(‘/qiniu/translate’, JSON.parse(data), function(resp){
$(“.project-swf-uploader-other”).html(“”);
image_thumb = resp['image_thumb'];
image = resp['image'];
$(‘#project_version_main_image’).val(image);
$(“.project-swf-uploader-review”).html(‘<img src=”‘ + image_thumb + ‘”>’);
});
}
上例通过JSON 解析器来实现解析回调data。
function uploadSuccess(file, data) {
var data = eval(‘(‘+data+’)');
if (data.status == 1) {
$(“#image”).val(data.data);
$(‘.plists_thumb img’)[0].src=data.thumb;
}else{
alert(data.info);
}
}
上例通过eval() 函数来解析JSON到一个对象的。