Podczas pracy nad podstawowymi przykładami kątowych NG nie działa zgodnie z oczekiwaniami

Poniżej znajduje się mój kod HTML:

<form ng-submit="requestFunding()" ng-controller="StartUpCalculator">
    Starting :
    <input ng-change='ComputeNeeded()' ng-model='funding.StartingEstimate'>Recommedation : {{needed}}
    <button>Fund me</button>
    <button ng-click="reset()">Reset</button>
</form>

Kod JavaScript:

function StartUpCalculator($scope)
{
    $scope.funding = {
        StartingEstimate: 0
    };
    ComputeNeeded = function ()
    {
        $scope.needed = $scope.funding.StartingEstimate * 10;
    };

    $scope.requestFunding = function ()
    {
        window.alert("Whoa!");
    };
}

Za każdym razem, gdy kliknąłem przycisk Reset(reset()) Wykonuje funkcję requestFunding

0
user2853731 25 listopad 2013, 08:56

2 odpowiedzi

Najlepsza odpowiedź

W kontrolerze nie ma $scope.reset(). Wywołujesz ng-submit, klikając przycisk.

Możesz zmienić <button> do <button type="button">, więc nie będzie zobowiązany do przesyłania formularza. Domyślnie dowolny przycisk w formularzu bez typu i nie kliknij przycisk obsługi, aby zapobiecDefault (), wywołuje przełożone, jednak type="button" nie.

Musisz także zmienić ComputeNeeded do $scope.ComputeNeeded, jeśli chcesz, aby pracować z ng-change

1
charlietfl 25 listopad 2013, 05:09

Bo on ng-submit dzwonisz requestFunding. Dodaj nowy przycisk i zadzwoń {X2}} Stamtąd lub Else Usuń reset z tagu formularza i umieścić go.

0
Jayram 25 listopad 2013, 05:05