JQuery - 提交的表单是什么?

时间:2011-02-09 15:22:43

标签: ajax jquery

我有一个产品页面,对于每个产品,我想要一个使用AJAX来更新会话的表单。我做了这一点 - 只提供背景。

我使用产品的ID为每个表单创建一个不同的表单类和名称,因此每个表单的名称类似于this_form_name_567,下一个表单将是this_form_name_568,依此类推。

每个表单都有一个提交按钮。我无法搞清楚

  1. 最好使用哪个事件,以便在点击提交按钮时识别正确的表单?

  2. 点击后,如何确保从提交的表单中的隐藏字段(唯一ID)中获取正确的值,以便我可以填充一行代码,例如:

    $.post("compare_response.php", {compare_this: $("#compare_this").val()}, function(data){
    }
    

2 个答案:

答案 0 :(得分:2)

您可以使用.closest树遍历方法来获取嵌套感兴趣按钮的表单:

$("input[type=submit]").click(function() {
    alert($(this).closest("form").attr("id"));
});

甚至更简单,只需获取元素的form属性:)

$("input[type=submit]").click(function() {
    alert(this.form.id);
});

You can try it out here.

答案 1 :(得分:1)

您可以像这样获得您提交的表单:

$('form').submit(function() {
    var yourForm = $(this);
    var hiddenValue = $(this).find('input[type=hidden]').val();
});

当然,您可以获得不同的隐藏价值,或者如果您隐藏了多个隐藏价值,则必须提供更多信息。