Malsup的jquery Ajax表单插件中的上下文

时间:2012-03-11 07:16:28

标签: jquery jquery-plugins jquery-forms-plugin

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

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

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

提前致谢。

2 个答案:

答案 0 :(得分:3)

知道了。

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

$('form').ajaxForm({
    beforeSubmit: function(arr, $form, options){
        options.context = $form;
    }
    //Rest of the options and callbacks
});

答案 1 :(得分: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 }); });