點擊按鈕將引發表單刷新的行為
<p>我在Angular中有一個表單,其中有兩個按鈕標籤。一個按鈕在<code>ng-click</code>上提交表單。另一個按鈕純粹用於使用<code>ng-click</code>進行導航。然而,當點擊這個第二個按鈕時,AngularJS會導致頁面刷新,觸發404錯誤。我在函數中設定了一個斷點,它會觸發我的函數。如果我執行以下任何操作,它就會停止:</p>
<ol>
<li>如果我移除<code>ng-click</code>,按鈕不會導致頁面重新整理。 </li>
<li>如果我在函數中註解掉程式碼,它不會導致頁面刷新。 </li>
<li>如果我將按鈕標籤更改為錨標籤(<code><a></code>)並添加<code>href=""</code>,它就不會導致刷新。 </li>
</ol>
<p>後者似乎是最簡單的解決方法,但為什麼AngularJS在我的函數之後運行任何導致頁面重新加載的程式碼?看起來像是個bug。 </p>
<p>這是表單:</p>
<pre class="brush:php;toolbar:false;"><form class="form-horizontal" name="myProfile" ng-switch-when="profile">
<fieldset>
<div class="control-group">
<label class="control-label" for="passwordButton">Password</label>
<div class="controls">
<button id="passwordButton" class="secondaryButton" ng-click="showChangePassword()">Change</button>
</div>
</div>
<div class="buttonBar">
<button id="saveProfileButton" class="primaryButton" ng-click="saveUser()">Save</button>
</div>
</fieldset>
</form></pre>
<p>這是控制器方法:</p>
<pre class="brush:php;toolbar:false;">$scope.showChangePassword = function() {
$scope.selectedLink = "changePassword";
};</pre>
<p><br /></p>