2017-08-01 42 views
1

當我點擊未定義爲提交按鈕時,提交(formAccessor)按鈕的作品。我很好奇這種行爲,因爲我沒有把它定義爲提交按鈕。事實上,當我在表單中添加另一個按鈕時,它也會提交。我怎樣才能把一個按鈕放入窗體並給它另一種行爲? thaks角度知道按鈕是如何提交按鈕

<form #formAccessor="ngForm" on-ngSubmit="submit(formAccessor)"> 
    <div class="form-group"> 
     <label for="id">ID </label> 
     <input ngModel name="id" id="id" #idAccessor="ngModel" type="text" class="form-control"> 

    </div> 
    <div class="form-group"> 
     <label for="dataModelVersion">Data Model Version </label> 
     <input id="dataModelVersion" type="text" class="form-control"> 
    </div> 
    <div class="form-group"> 
     <label for="orderId">orderId </label> 
     <input id="orderId" type="text" class="form-control"> 
    </div> 


    <button class="btn btn-primary pull-right">Submit</button> 
</form> 
+5

我想形式默認內的按鈕'類型=「提交」'https://stackoverflow.com/questions/9643806/form-is-submitted-when-i-click-on-the-如何避免此問題 –

+2

另請注意,該行爲不是特定於Angular的。 –

回答

1

此行爲不是Angular相關的。這基本上就是您的瀏覽器自行解析按鈕的方式。即使沒有Angular,您也可以看到here,但該按鈕的表現仍然像提交按鈕一樣。

<form> 
    <input required> 
    <button> 
    Click 
    </button> 
</form> 

但是,如果您指定該按鈕的類型,它的行爲應該與它應該一樣。因此,您可以指定類型button,這將不會觸發表單操作/提交,如here所示。

<form> 
    <input required> 
    <button type="button"> 
    Click 
    </button> 
</form>