Отправить форму по клику, но не отправлять, используя jquery и ajax - PullRequest
0 голосов
/ 30 августа 2011

Я хочу отправить всю информацию формы с помощью функции события onclick (я не хочу использовать обычную отправку).Как я могу использовать метод post или ajax?

вот мой код

$("#login_form").bind("click", function() {
    var qtyVal = document.getElementsByName('id[]').length; 

    $.ajax({
        type        : "post",
        cache   :   false,
        url     : "abcd.php?ref=xyz",
        data        : $(this).serializeArray(),
        success: function(data) {
        $.fancybox(data);
        }
    });
    return false;
});

Ответы [ 2 ]

0 голосов
/ 30 августа 2011

Вы не должны использовать ключевое слово this здесь. Вы нажимаете кнопку, чтобы отправить данные формы, поэтому this вернет вам элемент кнопки. Вы не должны использовать событие «click» для вашей формы тоже. Вы можете сделать как следующий код:

function send(){

$.ajax({
    type        : "post",
    cache   :   false,
    url     : "abcd.php?ref=xyz",
    data    : $('#frm').serializeArray(),
    success: function(data) {
    alert(data);
    }
});
return false;} 



<form id="frm"><input type="button" id="submit" onclick="send()" /></form>
0 голосов
/ 30 августа 2011

Вы ищете .submit()?

Если login_form является действительно формой (т.е. <form id="login_form">), вы можете сделать:

$("#login_form").submit();

для отправки формы обычным способом без вызова AJAX.

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