2015-12-07 4 views
0

я получаю эти данные с сервера в ответ JSON:Невозможно получить доступ к данным JSON в функции

{ 
    "success": true, 
    "status": "success", 
    "path": "http:\/\/www.images.site.com\/profile\/large\/", 
    "smallpath": "http:\/\/www.images.site.com\/profile\/small\/", 
    "smpath": "http:\/\/www.images.site.com\/profile\/sm\/" 
} 

Как я могу получить доступ к его успеху JQuery? Я попытался это:

$(document).ready(function() { 
    $("#img").dropzone({ 
     paramName: "file", 
     maxFiles: 1, 
     url: 'http://images.site.com/aac.php', 
     init: function() { 
      this.on("success", function (file, dd) { 
       console.log("log " + dd.length); 
       console.log("log " + dd.success); 
       console.log("sd" + dd.path); 
      }).fail(function() { 
       alert("error"); 
      }); 
     } 
     }); 

Я получаю сообщение об ошибке:

log Invalid JSON response from server

Я использую dropzone.js для файла при загрузке

+2

Можете ли вы добавить код, который используется для получения данных с сервера? В первую очередь, что «это» ссылается на –

+0

, пожалуйста, снова просмотрите вопрос. скобка может mishmetch здесь, она правильно закрыта – xrcwrn

ответ

0

изменения Try

dd.length

к этому

Object.keys(dd).length

Я попытался console.log(dd.length) и это показывает undefined и Object.keys(dd).length работает хорошо.

+0

, но, как я знаю, для доступа к успеху fron json response Я должен делать dd.success, это показывает ценность успеха, что может быть проблемой – xrcwrn

+0

У вас есть ошибка: 'log Invalid JSON response from server' и вы вызываете сначала эту строку 'console.log (« log »+ dd.length);'. Поэтому 'Invalid JSON response from server' является' dd.length'. Я думаю, что он получает ошибку и останавливается здесь. Попытайтесь перейти на 'console.log (« log1 »+ dd.length);' и вы увидите, что скрипт останавливается. Для меня 'dd.success' работает хорошо, а' dd.length' показывает 'undefined' –

+0

Это выше json-ответа правильно. – xrcwrn

Смежные вопросы