Как получить доступ к Json Response

Вот мой код для загрузки файлов на мой сервер.

$(function () { $('#phy_fileupload').fileupload({ autoUpload: true, add: function (e, data) { $('body').append('<p class="upl">Uploading...</p>') data.submit(); }, progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); $('#phy_progress .bar').css( 'width', progress + '%' ); }, done: function (e, data) { $.each(data.files, function (index, file) { $('.upl').remove(); $('<p/>').text(file.name).appendTo("#phy_files"); }); } }); }); 

Вот HTML

 <div id="phy_progress"> <div class="bar" style="width: 0%;"></div> </div> <input id="phy_fileupload" type="file" name="files[]" data-url="<?php echo site_url('admin/upload/'); ?>" multiple> <div class="files" id="phy_files"></div> 

Он работает очень хорошо, загружает изображение и отправляет json в ответ, который я могу видеть в FIREBUG.

Вот ответ одного загруженного файла.

 {"files":[{"name":"2013-06-20_1235UQn5gm5SRUPzbA.png","size":29381,"url":"http:\/\/files\/2013-06-20_1235UQn5gm5SRUPzbA.png","thumbnail_url":"http:\/\/files\/thumbnail\/2013-06-20_1235UQn5gm5SRUPzbA.png","delete_url":"http:\/\/localhost\/mark\/?file=2013-06-20_1235UQn5gm5SRUPzbA.png","delete_type":"DELETE"}]} 

Теперь проблема заключается в том, что он добавляет имя файла в div (#phy_files) (т.е. 2013-06-20_1235.png), как бы я хотел добавить новое имя файла, которое было загружено на сервер (т.е.) 2013- 06-20_1235UQn5gm5SRUPzbA.png. Теперь я провел весь день, чтобы попытаться получить доступ к этому ответу Json, но, по-видимому, я либо искал неправильный конец, либо полностью потерял, я до сих пор не знаю, как я могу получить доступ к этому ответу.

Любая помощь будет действительно оценена. Пожалуйста, дайте мне знать, если вы не понимаете, что я здесь написал, я более чем счастлив объяснить это, если потребуется. Спасибо.

Вкратце:

проблема в том, что загружаемый файл называется let say 'file.png', на сервере его имя изменено на 'filexyzserdsdf.png', теперь я хочу, чтобы имя файла ответа было записано в моем div (#phy_files) , но вместо этого он пишет 'file.png'

Related of "Как получить доступ к Json Response"

теперь его становится ясно … ОК вы должны сделать это тогда:

 done: function (e, data) { var res = jQuery.parseJSON(data.result); $.each(res.files, function (index, file) { $('.upl').remove(); $('<p/>').text(file.name).appendTo("#phy_files"); }); } 

поэтому, если вы используете данные console.log, что находится в журнале =?

 done: function (e, data) { console.log(data); $.each(data.files, function (index, file) { $('.upl').remove(); $('<p/>').text(file.name).appendTo("#phy_files"); }); }