Ho un modulo in Angular che contiene due tag pulsanti. Un pulsante invia il modulo ng-click
. L'altro pulsante serve esclusivamente per la navigazione ng-click
. Tuttavia, quando si fa clic su questo secondo pulsante, AngularJS sta causando un aggiornamento della pagina che attiva un 404. Ho lasciato cadere un punto di interruzione nella funzione e sta attivando la mia funzione. Se eseguo una delle seguenti operazioni, si interrompe:
- Se rimuovo il
ng-click
, il pulsante non provoca un aggiornamento della pagina. - Se commento il codice nella funzione, non provoca un aggiornamento della pagina.
- Se cambio il tag del pulsante in un tag anchor (
<a>
) conhref=""
, allora non provoca un aggiornamento.
Quest'ultimo sembra la soluzione più semplice, ma perché AngularJS sta eseguendo un codice dopo la mia funzione che fa ricaricare la pagina? Sembra un bug.
Ecco il modulo:
<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>
Ecco il metodo del controller:
$scope.showChangePassword = function() {
$scope.selectedLink = "changePassword";
};