Тур Array де Array JSON с JQuery

У меня есть функция cakephp, которая возвращает мне данные в формате json следующим образом

 $response = array($query_license,$query_estate,$result_license);
    if ($this->request->is('ajax')) {
        echo json_encode($response);
        die();
    }

. Чтобы восстановить данные, я делаю следующее

$.ajax({
            type: 'GET',
            async: true,
            cache: false,
            url: license,
            dataType: 'json',
            data:{id_user_license:id_user_license,id_evaluation:id_evaluation},
            success: function (data){
                $.each(data,function(i,s){
                    if(s[0].cantidad_pendiente === 0){
                        $("#message_license").html('<p>Usted no cuenta con licensias disponibles</p>');
                        $("#modal_report__footer").html('<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>');
                    }else if(s[0].estado === 3){
                        $("#message_license").html('<p>Usted cuenta con '+ s[0].cantidad_pendiente +'</p>');
                        $("#message_consumed").html('<p>Esta evaluacion ya consumio licencia</p>');
                        $("#modal_report__footer").html('<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>');
                    }else{
                        $("#message_license").html('<p>Usted cuenta con '+ s.indexOf(3).cantidad_pendiente +'</p>');
                        $("#modal_report__footer").html('<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button> <button type="submit" class="btn btn-danger">Consumir</button>');
                    }
                });
            }
        });

Проблема в том, что Когда я получаю значения, чтобы показать их пользователю, он показывает мне undefined и проверяет внутри консоли, что я вижу это

console.log(s[0].cantidad_pendiente);
5
undefined

, чтобы убедиться, что данные поступают в объект данных и выполняют console.log(data);

, и это результат

introducir la descripción de la imagen aquí

по какой-то причине приносит мне смелость и затем показывает пустое что-то я делаю неправильно или Я должен изменить спасибо за вашу помощь

0
задан 20.01.2017, 16:35
0 ответов

Я думаю, что проблема коренится в PHP и состоит в том, что ты возвращаешь ассоциативный array в JSON, не определяя этого в PHP.

Попробуй меняться

Это

echo json_encode($response);

Поэтому

echo json_encode($response, true);

Аргумент, который мы добавляем, - "assoc", по умолчанию эта в false если только ты это не определишь как true. Обрежь читать больше относительно этой функции в http://php.net/manual/es/function.json-decode.php.

0
ответ дан 03.12.2019, 17:36