我需要专家帮助。
我想上传一张图片到我的PHP脚本,它的工作原理。 现在,我希望在上传到我的div #showdata后返回JSON响应,但它不起作用:(
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
var params = new Object();
params.message = pmsg;
options.params = params;
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, server, function(r) {
document.getElementById('camera').innerHTML = "Upload successful: "+r.bytesSent+" bytes uploaded.";
$.mobile.hidePageLoadingMsg();
// here get the Json response
$('#showdata').html("<p>item1="+r.item1+" item2="+r.item2+" item3="+r.item3+"</p>");}, function(error) {
document.getElementById('camera').innerHTML = "Upload failed: Code = "+error.code;
}, options); }
你能帮助我,我如何显示JSON结果。 谢谢!
答案 0 :(得分:3)
因此,在您的成功功能中,您会得到FileUploadResult,您称之为&#34; f&#34;。好吧f有一个名为&#34;响应&#34;它为您提供PHP页面的响应。您必须查看响应并使用JSON.parse()将其转换为Object。
答案 1 :(得分:0)
来自服务器PHP页面的响应:
return json_encode(array('item1'=>'value1', 'item2'=>'value2'));
在javascript中解析FileUploadResult:
try {
var obj = JSON.parse(FileUploadResult.response); // Produces a SyntaxError
} catch (error) {
console.log(error.message); // Handle the error - Unexpected token
}
尝试使用eval:
eval('var obj=' + FileUploadResult.response);