Распечатать массив возвращаемых значений в ajax success - PullRequest
0 голосов
/ 17 мая 2019

Я хочу напечатать массив значений в ajax success

код моего контроллера

function get_all_packages() {        
    $data['free_flow'] = $this->Api_model->get_free_flow_packages();
    $data['draft'] = $this->Api_model->get_draft_packages();
    print_r($data);
}

код моей модели

function get_free_flow_packages(){
    $this->db->select('*');
    $this->db->from('item');        
    $this->db->where('item.category_id', 1);
    $query = $this->db->get();
    return Json_encode($query->result_array());
}

мой код ajax

      $(document).ready(function(){
                   alert('hello');
                   $.ajax({
                        type: "POST",
                        url: 
      "http://localhost/bartender_api/Api/get_all_packages/",                            
                        success: function (result) {
                            console.log(result.free_flow); 
                            console.log(result.draft);

                        }
                    });
               });

здесь я буду утешать оба значения массива, но оно показывает ноль, как печатать оба значения массива.

Ответы [ 3 ]

0 голосов
/ 17 мая 2019

Попробуйте с некоторыми изменениями

Контроллер

echo $data;

Модель

Это json_encode Не Json_encode()

 return json_encode($query->result_array());

Запрос Ajax (Дополнение)

dataType: 'json'
0 голосов
/ 17 мая 2019

Добавить параметры ajax:

dataType: 'json'

Вы также можете использовать собственный выходной класс codeigniter для отображения реальных данных json:

$this->output->set_content_type("application/json")->set_output($data);
0 голосов
/ 17 мая 2019

Вместо использования print_r в функции контроллера, используйте

echo json_encode($data);

и в свой ajax добавьте свойство dataType:"JSON" Тогда вы можете получить доступ к free_flow как result.free_flow

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...