2

我发现Malsup 的 JQuery Form 插件ajaxyfying在我的表单中非常方便。但是,我无法引用在成功和错误回调中发生提交事件的目标元素。中的this关键字指的是ajaxForm对象而不是 DOM 元素。

我的页面上有很多小表格。就像针对请求的接受和拒绝按钮一样,我想使用 ajax 提交这些表单。完成后,我想从 DOM 中删除该表单并显示消息“请求成功!” 或者。但我无法找到实际提交表单的目标。

我知道我可以传递一个context选项,该选项将成为所有回调的上下文,因为我也无法弄清楚如何引用发生提交事件的元素?

提前致谢。

4

2 回答 2

3

知道了。

我可以传递一个beforeSubmit函数,在其中我将上下文设置为目标。

$('form').ajaxForm({
    beforeSubmit: function(arr, $form, options){
        options.context = $form;
    }
    //Rest of the options and callbacks
});
于 2012-03-11T07:42:42.363 回答
0

不知道这是否会帮助任何人,但这就是我让它工作的方式:

HTML:

<form action="/route/controller" method="post" class="ajaxForm" data-target="#ajaxContainer_1"></form>

JS:

$(function() { $('.ajaxForm').ajaxForm({ beforeSubmit: function(arr, $form, options){ options.target = $form.data('target'); }, delegation: true, resetForm: true }); });

于 2014-08-06T09:07:41.863 回答