JQuery функция обратного вызова - PullRequest
0 голосов
/ 26 января 2010

У меня есть форма, и она успешно проходит проверку и отправку. все, что я хочу, это вызвать функцию возврата как "успех", когда форма успешно отправлена. вот что у меня есть, но не повезло:

$(document).ready(function() {
$("#form1").validate({
        rules: {

                email1: {// compound rule
                        required: true,
                        email: true                 
                }
)};
$('#form1').ajaxForm(function() { 
                alert("Thank you for your comment!"); 
                //document.getElementById("popup").innerHTML = "Thank You!!"
            }); 
    });

вот моя форма ввода:

<input name="email1" size="22" type="text"/>

Любые идеи с благодарностью!


спасибо за ваши ответы. это не работает для меня, так как я пытаюсь отобразить «успех» в этом эффекте dhtml исчезновения:

Я застрял в кругу, пытаясь найти способ распечатать предупреждение (успех) в затухании.

любые идеи

Ответы [ 3 ]

3 голосов
/ 26 января 2010

Я быстро просмотрел API и нашел это. (тск .. тск)

Извините, но всегда не забывайте просматривать API. Это избавит вас от боли.

$('#form1').ajaxForm({
    success: function() {
        alert("Success!");
    }
});
2 голосов
/ 26 января 2010

Вы получаете сообщение об ошибке «ajaxForm - это не функция»? Вы не забыли добавить тег сценария, ссылающийся на плагин jjery ajaxForm? Вам нужно это, ПОСЛЕ вашего тега скрипта, ссылающегося на основной файл jquery:

<script type="text/javascript" src="jquery.form.js"></script>

С src, конечно, указывая на реальный файл. AjaxForm не является частью ядра jQuery.

Если это не сработает, вы можете попробовать заменить символ $ jquery на «jQuery» (с учетом регистра!), Чтобы проверить, можно ли переопределить $ в любом из ваших других скриптов.

0 голосов
/ 26 января 2010

Во-первых, вам нужно отправить через AJAX:

$("#form1").submit(function() {
  $(this).ajaxSubmit();
  return false;
});

См. документы .

Если вы уже это делаете, ajaxForm() (который только готовит, но не отправляет) может принять любой из $.ajax параметров , поэтому:

$("#form1").ajaxForm({
  success: function() {
    alert("Thank you for your comment");
  }
});
...