2015-09-25 72 views
5

我有一個表單,其ng-submit將移至下一個問題。表單ng-click觸發ng-submit

 <form ng-submit="BC.next()" novalidate> 
      <input type="submit" value="Next Question"/> 
      <button id="previous" ng-click="BC.previous()">Previous Question</button> 

但是,每當我點擊後退按鈕,執行之後,然後觸發BC.next()我很困惑,沒有人知道爲什麼會這樣?我甚至試圖用</input>關閉<input type="submit">標籤,但那並沒有解決它。

+0

當你點擊按鈕時,防止表單的默認動作 –

回答

10

確保表單中沒有提交的所有其他按鈕將來自type="button"

<form ng-submit="BC.next()" novalidate> 
      <input type="submit" value="Next Question"/> 
      <button type="button" id="previous" ng-click="BC.previous()">Previous Question</button> 

你可以看到細節:How to prevent buttons from submitting forms

TL; DR的職位:HTML5默認<button>作爲<button type="submit">所以你需要手動更改此。

+0

哇太有趣了!你怎麼知道的?這是不是在某個地方?或者它預期的行爲的JavaScript? – Noitidart

+0

啊感謝您的編輯!那這就是javascript的行爲吧?堆棧不會讓我接受8分鐘的請求,請諒解。 – Noitidart

+1

這是開始使用Angular&Javascript時首先遇到的問題之一,因此您很快就能熟悉這一點。 – Shikloshi