JQuery отправка формы AJAX выпуск - PullRequest
2 голосов
/ 18 декабря 2011

Я явно что-то упускаю из-за jQuery, отправки форм и AJAX. Бэкэнд PHP и кодировка JSON работают нормально. Но когда форма отправлена, это похоже на данные представляются дважды, и значения, входящие в форму, равны null.

Вот мой сценарий:

$(document).ready(function () {
    var validated = $("#loginForm").validate({
        errorLabelContainer: "#errorMessage",
        wrapper: "li",
        rules: {
            username: "required",
            password: "required"
        },
        messages: {
            username: "Please enter your username.",
            password: "Please enter your password."
        },
        submitHandler: function (form) {
            $.ajax({
                type: 'POST',
                url: $(form).attr('action'),
                data: $(form).serialize(),
                dataType: 'json',
                success: function (res) {
                    if (res.err == true) {
                        $("#errorMessage").text(res.msg);
                    } else {
                        window.location = res.url;
                    }
                },
                error: function () {
                    $("#errorMessage").text("There was an error processing form.");
                },
            });
        }
    });
});

1 Ответ

0 голосов
/ 22 декабря 2011

Я сделал это, и кажется, что код должен работать. В firebug я увидел, что запрос отправлен правильно со всей формой даты. Я заметил, что если свойство dataType определено, ответный тип данных должен быть правильным.

http://jsfiddle.net/7vtAw/

...