Возникла проблема с применением события к динамически добавленной форме в Jquery. - PullRequest
0 голосов
/ 05 июля 2011

Я загружаю форму в диалоговом окне через jQuery

Код похож на

<form class ="form1" action="" method="post" enctype="multipart/form-data" >
...
</form>

Я использую плагин формы jQuery для отправки такой формы

$(".form1").live('submit', function(e) {   

    var options = { 
        target:        '.ajaxMessage',  
        beforeSubmit:  showRequest,  
        success:       showResponse,
        type: 'POST'

    }; 
    alert('test');                          
    $(this).ajaxSubmit(options); 
    return false;                                         
});

Теперь

  1. Если я загружаю форму напрямую без AJAX, а затем отправляю форму, то форма успешно отправляется без каких-либо проблем. Работает 10 из 10 раз

  2. Во втором случае я загружаю форму динамически. Когда я нажимаю на ссылку формы, я загружаю ее динамически в диалоговом окне jquery, затем, если я нажимаю на форму отправки, я вижу предупреждение, но форма не отправлена. Но иногда это работает, а иногда нет. Я бы сказал, что это работает 2 раза из 10.

Консоль Firebug также не показывает никаких ошибок

Есть ли способ найти проблему

1 Ответ

0 голосов
/ 05 июля 2011

Firebug обычно (я вообще-то не думаю) не будет отображать никаких ошибок для вызова ajax, вместо этого ошибка будет в запросе ajax (все еще в firebug).Щелкните запрос, а затем ответ.

Я предполагаю, что есть проблема с параметрами, которые вы отправляете, или что-то не так с тем, что вы возвращаете (т.е. вы возвращаете html, когда ajax ожидает json, это будетдобиться успеха никогда не будет запущено)

Кроме того, попробуйте передать error:function(jqXHR, textStatus, errorThrown){} в параметры `ajaxSubmit и посмотреть, что произойдет.

...