0

我正在使用jQuery 1.6这样的东西提交表单:

jQuery('form.AjaxForm').submit( function() {

    $.ajax({
        url     : $(this).attr('action'),
        type    : $(this).attr('method'),
        dataType: 'json',
        data    : $(this).serialize(),
        success : function( data ) {                    
                    alert("success");   
                  },
        error   : function( xhr, err ) {
                    alert("error");                     
                  }
    });

    return false;
});

上面的 jQuery 代码非常适合我。

现在的问题是我的表单是在网页上动态添加的。在这种情况下,上面的代码不起作用。我也尝试.live()了功能,但它仍然不适合我:

// Ajax Forms
jQuery('form.AjaxForm').live( 'submit', function() {            
    // using jquery $.ajax() here;
    return false;
});

我不知道为什么.live()函数不适用于表单提交事件。

任何想法 ??

谢谢

4

1 回答 1

1

您的设置一定有问题,jQuery 工作正常,仔细检查您的类名,确保在 DOM 准备好( $(function() {}); )和所有常规测试之后调用您的 jQuery。

有关使用动态添加的表单的示例,请参见下面的链接。

http://jsfiddle.net/m9VVR/

于 2012-04-14T21:40:13.047 回答