jQuery表单提交参数检查

时间:2010-01-22 17:35:01

标签: jquery form-submit

我可以在$('#formid').submit(function() { });调用中使用jQuery拦截/查询表单提交值吗?我无法检查页面中的值,因为它是我需要检查的特定提交按钮。我发现这个http://geekswithblogs.net/renso/archive/2009/09/09/intercept-a-form-submit-with-jquery-and-prevent-or-allow.aspx并且它在FF中有效,但在IE8中没有,所以不幸的是,这没有帮助。我也不想将提交代码附加到按钮上,因为我希望制作一些通用的代码,我可以插入一整套表单。

干杯

MH

1 个答案:

答案 0 :(得分:2)

最新的jQuery 1.4现在支持提交活动的“实时” - 这意味着您不必将单个处理程序附加到所有表单。 Paul Irish在这里提供了一个很好的例子,涵盖了你所问的内容:

http://jquery14.com/day-05/jquery-1-4-hawtness-1-with-paul-irish

这是我自己的看法:

jQuery(document).ready(function() {

  var pageForms = jQuery('form');

  pageForms.find('input[type="submit"]').live('click', function(event) {
    var submitButton = this;
    var parentForm = jQuery(jQuery(this).parents('form')[0]);
    parentForm.data('submit-button',submitButton);
  });

  pageForms.live('submit', function(event) {

    // Prevent form-submission. You can do this conditionally later, of course
    event.preventDefault();

    // The form that was submitted
    var theForm = jQuery(this);

    // Detect which submit button was pushed
    var submitButton = theForm.data('submit-button');
    console.log('submitButton = ',submitButton.value);

  });

});

HTML:

<form>
  <input type="submit" value="submit form 1" />
</form>

<form>
  <input type="submit" value="submit form 2" />
  <input type="submit" value="submit form 3" />
</form>

http://jsbin.com/equho3/6/edit

编辑 - 对不起,我在这里发布了一个与你的链接相匹配的例子!我现在提供了跨浏览器解决方案。