使用Jquery发布多个表单

时间:2014-05-17 00:22:03

标签: javascript jquery ajax forms

我的页面中有多个表单。我希望能够从单个Jquery函数发布这些表单。

它仅适用于第一种形式。我认为这是因为所有表单具有相同的Id,我需要使用click function()而不是submit()并使用类似$(this).closest(&#34; form&#34;)... < / p>

<form class="form-horizontal" role="form" id="fpostcomm">
<input name="cmt" type="text" class="form-control input-sm" id="inputcommt" autocomplete="off">
</form>


<script>
$(document).ready(function(){
    $("#fpostcomm").submit(function(){
        $.ajax({type:"POST", data: $(this).serialize(), url:"ajax/ajxaaddcmt.php", 
            success: function(data){
                $("#inputcommt").val('');
            },
                        error: function(){
                    alert ("Error.");
            }
        });
        return false;
    });
});
</script>

1 个答案:

答案 0 :(得分:1)

您无法重复使用ID。它们在文档中必须是唯一的。解决这个问题,然后你可以随意抓住它们。

如果您想在所有这些名称上使用单个共享名称,请改用类。

<form class="form-horizontal fpostcomm" role="form">
<input name="cmt" type="text" class="form-control input-sm inputcommt" autocomplete="off">
</form>


<script>
$(document).ready(function(){
    $(".fpostcomm").submit(function(){
        $form = $(this);
        $.ajax({type:"POST", data: $(this).serialize(), url:"ajax/ajxaaddcmt.php", 
            success: function(data){
                $form.find(".inputcommt").val('');
            },
            error: function(){
                    alert ("Error.");
            }
        });
        return false;
    });
});
</script>