0

我正在使用编码文件数据json_encode,这就是我在 Javascript 中发送编码数据时得到的结果:

在此处输入图像描述

这是我的 php 代码(使用 codeigniter 上传文件):

$file_info = $this->upload->data();
echo json_encode($file_info);

我使用我的 javascript 文件中的数据:

'onUploadSuccess' : function(file, data, response) {
      alert('The file was saved to: ' + data);
}

我如何使用 file_name 或其他编码的字符串?!

例如我该如何使用:

'onUploadSuccess' : function(file, data, response) {
  alert('The file name is: ' + file_name);
}
4

1 回答 1

1

您的回复中有 3 个变量。要查看代码执行时的每一个是什么,请使用 console.log()。

'onUploadSuccess' : function(file, data, response) {
    console.log('\n"data" variable:')
    console.log(data);
    console.log('"file" variable:')
    console.log(file);
    console.log('\n"response" variable:')
    console.log(response);
}

现在打开您的 javascript 日志(Chrome 中的 F12,我认为 Firefox 中的 Shift+F5)。Json 数据应该已转换为对象。如果是 json 格式,请添加JSON.parse(data).

对象是 javascript 的支柱。要在名为的对象中选择信息data,请使用data.property. 所以data.file_name应该返回“83274983279843.jpg”,data.type会返回类型等。

编辑:所以在聊天讨论之后,问题是你没有解析 JSON。此外,我错误地告诉您反转变量顺序。

这是固定代码:

'onUploadSuccess' : function(file, data, response) { 
    data = JSON.parse(data) 
    alert('The file : ' + data.file_type); 
}
于 2013-08-15T20:32:26.180 回答