我有同名的表格

时间:2014-07-31 20:15:32

标签: javascript php jquery ajax forms

我尝试使用jQuery在我的html表单中使用相同的名称和deffirent值发送ajax表单,但是当我提交表单时,我的ajax赢了工作并且它将提交给# 。有人能解释我为什么吗?

我的HTML表单:

<script src="lib/jquery/jquery.1.9.0.min.js"> </script>
<form name="Form" action="#" method="POST">
    <input name="idnum" type="hidden" value="somevaluehere1">
    <button type="submit">btn 1</button>
</form>

<form name="Form" action="#" method="POST">
    <input name="idnum" type="hidden" value="somevaluehere2">
    <button type="submit">btn 2</button>
</form>

这是我的ajax:

$(document).ready(function() {
    $("form[name=form]").submit(function(e){
        e.preventDefault()
        $.ajax ({
            type: "POST",
            url: "ajax/post.php",
            data: $(this).serialize(),
            success: function(data) {
                alert(data)
            }
        });
    });
});

对不起我的英国人

1 个答案:

答案 0 :(得分:2)

Formform不同。您的选择器与表单不匹配,因为属性选择器值区分大小写。

$("form[name=form]")更改为$("form[name=Form]")

您可以通过将alert($("form[name=form]").length);alert($("form[name=Form]").length);

进行比较来证明这一点

但请注意the name attribute for form elements should hold a unique value,所以你应该转而使用class属性(然后你可以使用类选择器(form.Form)。