如何通过java脚本文件中的json_encode获取编码数据

时间:2013-08-15 20:17:13

标签: javascript codeigniter json

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

enter image description here

这是我的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);
}

1 个答案:

答案 0 :(得分: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); 
}