Konstantin18ko
@Konstantin18ko
Стоматолог

Второй ajax возвращает undefined, почему?

Есть скрип который получает данные, после нажатия enter.
$(document).ready(function () {

    //срабатывает на ENTER
    $("#query_search").keyup(function (e) {
        if (e.which === 13 && $("#query_search").val().length > 0) {
            $.ajax({
                url: "../../php/search_user.php",
                async: false,
                type: 'POST',
                data: {
                    query_search: $("#query_search").val()
                },
                success: function (data, textStatus, jqXHR) {
                    $("#tabel_result").empty();

                    //получает одну строку, делит её на JSON -> в цикл
                    data = data.split("&&/");
                    var i = data.length - 2;
                    while (i !== -1) {
                        var data_s = jQuery.parseJSON(data[i]);

                        //выбирает значене в RADIO и SELECT
                        if (data_s.active === 1) {
                            data_s.active = "<input id='active_" + data_s.id_user + "' class='" + data_s.id_user + "' type='checkbox' checked disabled/>";
                        } else {
                            data_s.active = "<input id='active_" + data_s.id_user + "' class='" + data_s.id_user + "' type='checkbox' disabled/>";
                        }

                        //
                        var user_group = selectUserGroup(data_s.id_users_group);

                        //строит таблицу результатов
                        $("#tabel_result").append("<tr><td><input type='radio' id='" + data_s.id_user + "' checked/></td>" +
                                "<td>" + data_s.id_user + "</td>" +
                                "<td><input id='family_" + data_s.id_user + "' class='" + data_s.id_user + "' type='text' value='" + data_s.family + "' disabled/></td>" +
                                "<td><input id='name_" + data_s.id_user + "' class='" + data_s.id_user + "' type='text' value='" + data_s.name + "' disabled/></td>" +
                                "<td><input id='surname_" + data_s.id_user + "' class='" + data_s.id_user + "' type='text' value='" + data_s.surname + "' disabled/></td>" +
                                "<td>" + selectUserGroup(data_s.id_users_groups) + "</td>" +
                                "<td>" + data_s.user_group_full + "</td>" +
                                "<td><input id='username_" + data_s.id_user + "' class='" + data_s.id_user + "' type='text' value='" + data_s.username + "' disabled/></td>" +
                                "<td>" + data_s.password + "</td>" +
                                "<td><textarea id='commentaries_" + data_s.id_user + "' class='" + data_s.id_user + "' disabled>" + data_s.commentaries + "</textarea></td>" +
                                "<td>" + data_s.active + "</td>" +
                                "<td><textarea id='PHPSESSID_" + data_s.id_user + "' class='" + data_s.id_user + "' disabled>" + data_s.PHPSESSID + "</textarea></td>" +
                                "<td><input class='" + data_s.id_user + "' type='submit' value='Редактировать' disabled/></td></tr>");
                        i--;
                    }

                    //разблокирется строка напротив checkbox
                    $(":radio").click(function () {
                        $("." + $(this).attr("id")).prop("disabled", false);
                        $(this).prop("disabled", true);
                        $(this).prop("checked", false);
                    });

                    //подтверждение редактирования
                    $(":submit").click(function () {
                        alert(
                                $("#family_" + $(this).attr("class")).val() +
                                $("#name_" + $(this).attr("class")).val() +
                                $("#surname_" + $(this).attr("class")).val() +
                                $("#username_" + $(this).attr("class")).val() +
                                $("#commentaries_" + $(this).attr("class")).val() +
                                $("#PHPSESSID_" + $(this).attr("class")).val()
                                );
                    });

                }
            });
        }

        function selectUserGroup(id_users_group) {
            $.ajax({
                url: "../../php/get_users_groups.php",
                type: 'POST',
                success: function (data, textStatus, jqXHR) {
                    return id_users_group;
                }
            });
        }
        ;
    });
});


<?php

include './config.php';
mysqli_set_charset($connect, "utf8");

//запрашивает данные с БД и выводит ввиде таблицы
$stmt = mysqli_stmt_init($connect);
if (mysqli_stmt_prepare($stmt, 'SELECT id_users_groups, user_group_full FROM users_groups')) {
    /* выполняем запрос */
    mysqli_stmt_execute($stmt);
    /* привязываем результаты к переменным */
    mysqli_stmt_bind_result($stmt, $id_users_groups, $user_group_full);
    /* выбираем данные из результата */
    while (mysqli_stmt_fetch($stmt)) {
        echo "<option value='$id_users_groups'>$user_group_full</option>";
    };
    /* закрываем запрос */
    mysqli_stmt_close($stmt);
}


Почему ajax в функции selectUserGroup не работает - возвращает undefined (хотя алерты возвращает).
  • Вопрос задан
  • 167 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы