ajaxForm 错误回调内的表单对象

发布于 2024-08-04 21:29:06 字数 224 浏览 9 评论 0原文

我试图在 ajaxForm 的 error 方法中访问我的表单对象:

$('#foo').ajaxForm({
  error: function(){
    // where's my $('#foo') object?
  }
});

error 可以接受 3 个参数,但它们都不是表单对象,这也返回 url,但同样没有表单。

有什么建议吗?

I'm trying to access my form object inside of ajaxForm's error method:

$('#foo').ajaxForm({
  error: function(){
    // where's my $('#foo') object?
  }
});

error can take 3 params, but none of them are the form object, also this returns the url, but again no form.

Any suggestions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

羅雙樹 2024-08-11 21:29:06

棘手,为什么不使用:

var myForm = $("#foo");

myForm.ajaxForm({
 error: function(){
  myForm.//whatever
 }
});

如果有另一种方法,我很想了解自己。

Tricky, why not use:

var myForm = $("#foo");

myForm.ajaxForm({
 error: function(){
  myForm.//whatever
 }
});

If there is another way, I'd love to know myself.

扛刀软妹 2024-08-11 21:29:06

ajaxForm 中,表单元素本身可以在 beforeSubmit 部分中访问:

$('#foo').ajaxForm({

   beforeSubmit: function(formData, jqForm) {
        var myform = jqForm[0];
        /*
         If there are multiple forms in the selector, 
        each form is accessible with its order in the array
        */
   }

  error: function(){
    // where's my $('#foo') object?
    //It is here: myform
  }
});

In ajaxForm The form element itself is accessible in beforeSubmit section:

$('#foo').ajaxForm({

   beforeSubmit: function(formData, jqForm) {
        var myform = jqForm[0];
        /*
         If there are multiple forms in the selector, 
        each form is accessible with its order in the array
        */
   }

  error: function(){
    // where's my $('#foo') object?
    //It is here: myform
  }
});
忘你却要生生世世 2024-08-11 21:29:06

如果您阅读该插件文档中的“使用字段”选项卡,我想您会找到答案。

为了提高性能,您应该在绑定 ajaxForm 之前存储对表单的引用。

$(document).ready(function() {
    $foo = $('#foo');
    $foo.ajaxForm({
        error: function() {
            alert($('#fieldId', $foo).fieldValue()[0]);
        }
    });
});

If you read the tab 'Working with Fields' in that plugin's docs, I think you'll find your answer.

For performance, you should probably store a reference to the form before you bind the ajaxForm.

$(document).ready(function() {
    $foo = $('#foo');
    $foo.ajaxForm({
        error: function() {
            alert($('#fieldId', $foo).fieldValue()[0]);
        }
    });
});
撩人痒 2024-08-11 21:29:06

这个不起作用吗? IE,

$('#foo').ajaxForm({
  error: function(){
    alert($(this).attr('name'));
  }
});

Does this not work? I.e.,

$('#foo').ajaxForm({
  error: function(){
    alert($(this).attr('name'));
  }
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文