2

这是我第一次尝试使用 AJAX 表单提交。我已经让它工作了,但是当我点击任何按钮时提交会触发,而不仅仅是提交。我打算最终将清除按钮连接到表单清除操作,但到目前为止,它会提交表单。

HTML

<form id="testForm" role="form" action="" method="">
    <div class="form-group" >
        <label for="testArea" class="sr-only">Enter your text.</label>
        <textarea class="form-control" name="testArea" rows="15" id="testArea" placeholder="..."></textarea>
    <button name="submitTest" type="submit"  class="btn btn-primary" >Submit</button>
    <button  class="btn btn-primary">Clear</button>
</form> 

JS

$("#testForm").submit(function(event){
    event.preventDefault();
    var serializedData = $(this).serialize();
    $.ajax({
        url     : "processor.php",
        type    : "post",
        data    : serializedData,
        success : function(data) {
            $('#testForm').html(data);
        }
    })
});

我认为 .submit 会触发表单的真实提交,这是错误的吗?

4

2 回答 2

4

将您的代码与button.click事件联系起来:

$("#testForm [name='submitTest']").click(function(event){

顺便说一句,“清除”按钮可能不是必需的。它只是偶然点击的东西,然后是安静的咒骂。而是在单击“提交”按钮时自动清除该字段。

于 2013-08-30T17:23:46.650 回答
2

只需将清除按钮变成重置按钮:

<button type="reset" class="btn btn-primary">Clear</button>

这不仅使它不提交表单,而且在单击时会清除表单。

于 2013-08-30T17:47:32.510 回答