2015-10-08 4 views
0

У меня есть следующие функции JQuery, которая представляет данные в базу данных:Jquery получить JSON данных типа данных dataString

$('#book_client_form').submit(function (event) { 
        dataString = $("#book_client_form").serialize(); 

        $.ajax({ 
         type: "POST", 
         url: "<?php echo base_url() ?>operations/book_client", 
         data: dataString, 
         success: function (data) { 
          console.log(data); 
          $('.job_card_id').val(data[0].id); 
          $(".info_box_reload").show('slow'); 
          setInterval(function() { 

           $(".add_new_client_div").hide('slow'); 
           $(".clients_table_div").show('slow'); 
          }, 3000); 

         } 

        }); 
        event.preventDefault(); 
        return false; 
       }); 

После того как данные предполагается возвращенный последней вставкой идентификатора в формате JSON, который дает мне следующую выход:

[{"id":"17"}] 

Но когда я пытаюсь передать его в текстовом поле или предупредить его, я получаю неопределенный вывод или проходит пустым. Пожалуйста, сообщите, как я могу передать его на ввод текста? Я использую datatype: datastring.

+0

Вероятно, вы получите ответ строки от сервера, попробуйте JSON.parse, чтобы получить объект js из строки. – Grissom

+0

Можете ли вы попробовать с асинхронным: false при вызове $ .ajax – NightsWatch

ответ

0

Вы пытались разобрать данные JSON?

data = JSON.parse(data); 
console.log(data[0].id); // you can see the id in the dev console 
$('.job_card_id').val(data[0].id); 

или вы можете установить тип данных: 'JSONP', чтобы получить объект JavaScript в ответ

использование DATATYPE, его чувствительно к регистру.

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