2015-11-01 19 views
0

Я использовал JSON_encode(), чтобы создать строку из массива, но я зациклился на том, как получить данные после их кодирования. Я доступ к результату с помощью JQuery, но я потерял с форматированиемКак получить (декодировать) результирующий объект от JSON

Результат:

froms: "[{"campaign_froms":"that"},{"campaign_froms":"why \r"},{"campaign_froms":"that\r"},{"campaign_froms":"this\r"}]" 
subjects: "[{"campaign_subjects":"hi"},{"campaign_subjects":"hi\r"}]" 

JQuery:

$.ajax({ 
     dataType: "json", 
     type: "GET", 
     url: "campaignDetails.php", 
     data: dataString, 
     success: function(response){ 
      $('#offer_title').text(response["data"]["campaign_name"]); 
      $('#offer_link').val(response["data"]["offer_link"]); 
      $('#optout_link').val(response["data"]["optout_link"]); 
      $('#campaign_image').val(response["data"]["campaign_image"]); 
      $('#optout_image').val(response["data"]["optout_image"]); 
      $('#subjects').val(response["subjects"]["campaign_subjects"]); 
      $('#froms').val(response["froms"]["campaign_froms"]); 
      $('#campaign_id').val(response["data"]["id"]); 
      $('.campaignImageViewer').attr("src", imageUrl + response["data"]["campaign_image"]); 
      $('.optoutImageViewer').attr("src", imageUrl + response["data"]["optout_image"]); 
      //alert(response[0]["offer_link"]); 
      console.log(response); 
    } 
}); 
+0

У всех остальных частей ответа есть несколько пар ключ/значение? Пробовали ли вы перебирать «предметы» и «froms» и «добавлять» значения в divs, а не пытаться вставить массив? – sideroxylon

+0

покажите свой образец ответа json. –

+0

@JessMcKenzie Если мой ответ помогает, пожалуйста, примите. Если это не так, то какая-то обратная связь? –

ответ

1

Используйте функцию jQuery.parseJSON() декодировать его в JS объект.

Таким образом, измените эту строку:

success: function(response) { 

в:

success: function(data) { 
    response = jQuery.parseJSON(data); 

Это позволит получить результат, как data, и превратить его в объект JS response, который вы используете. И тогда ваш второй блок кода должен работать.

+0

@JessMcKenzie Теперь лучше? –

+0

Дает мне: Uncaught ReferenceError: данные не определены –

+0

@JessMcKenzie Вы изменили функцию (ответ) 'на функцию (данные)'? –

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