Jquery ajaxForm beforeSubmit запускается на document.ready - PullRequest
2 голосов
/ 10 июня 2009

У меня есть следующий код:

$("#forma_mod_uid").livequery( function (){
       $("#forma_mod_uid").ajaxForm({
                beforeSubmit: mcargando("#cargando2"),
                target:'#mod_2',
                success: ocargando("#cargando2")
       })
});

mcargando пропускает div, который будет содержать вращающуюся img, а затем при успешном завершении ocragando скрывает этот div, проблема в том, что beforeSubmit запускает beforeSubmit для готового документа

function mcargando(id_div){
    if (id_div==null){ var id_div="#cargando";}
    $(id_div).livequery(function (){$(id_div).show();});
}

1 Ответ

3 голосов
/ 10 июня 2009
beforeSubmit: mcargando("#cargando2"),

Должно быть:

beforeSubmit: function() { mcargando("#cargando2") },

И

success: ocargando("#cargando2")

Должно быть:

success: function() { ocargando("#cargando2") }

Как вы понимаете, вы вызываете функции. Единственный способ, которым вы могли бы использовать имеющийся там код без вызова функции, - это если вы сделали beforeSubmit: mcargando,, но, поскольку вам нужно передать в функцию переменную, просто оберните вызов в функцию, чтобы иметь возможность сделать это, и вы должны хорошо.

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