点击按钮即可提交表单

时间:2017-03-01 04:56:31

标签: jquery button model-view-controller

我在

中有3个按钮
<button type="button" name="N" id="N" value="N" class="btn">Add New Doc </button>
<button type="submit" name="submitButton" id="s1" value="AddMore" class="btn btn-success">Add More</button>
<button type="submit" name="submitButton" id="s2" value="SaveandSubmit" class="btn btn-success">Save and Submit</button>

两个用于提交表单,一个用于添加文档,如下所示

enter image description here

&#34;添加新文档&#34;单击时是正常按钮,将创建一个新行,用于附加文档jquery,如下所示

$(document).ready(function () {
    $("#N").click(function () {
        var index = (new Date()).getTime();
        var clone = $('#Newdoc').clone();
        clone.html($(clone).html().replace(/\[#\]/g, '[' + index + ']'));
        clone.html($(clone).html().replace(/"%"/g, '"' + index + '"'));
        var html = clone.html();
        $("#doc").append(clone.html());
    });

但是当点击此按钮时,表单中会添加一个新行,同时表单将提交。


修改

出于测试目的,我将所有按钮类型更改为&#34;按钮&#34;然后点击任何按钮即可提交表格

2 个答案:

答案 0 :(得分:0)

您可以尝试在按钮中附加方法并返回false。

HTML:

<button type="button" name="N" id="N" value="N" class="btn" onclick="addNewDoc();return false;">Add New Doc </button>

JS:

function addNewDoc(){
        var index = (new Date()).getTime();
        var clone = $('#Newdoc').clone();
        clone.html($(clone).html().replace(/\[#\]/g, '[' + index + ']'));
        clone.html($(clone).html().replace(/"%"/g, '"' + index + '"'));
        var html = clone.html();
        $("#doc").append(clone.html());            
}

答案 1 :(得分:-1)

使用event.preventDefault(); 而不是这个:

$("#N").click(function () {
                var index = (new Date()).getTime();

使用:

 $("#N").click(function (event) {
      event.preventDefault();
 var index = (new Date()).getTime();