2016-06-09 9 views
0

ich eine Angular 2 app bin die Gestaltung, die für einen Benutzer den Bildschirm sie auf und geht zurück eine Seite ist abbrechen kann. Während dies funktioniert, bewirkt der erste Klick auf die Schaltfläche, dass die Seite nach oben scrollt, und ein anschließender Tastendruck bewirkt die beabsichtigte Aktion. Ich habe versucht, false von der Klickmethode zurückzugeben, aber es funktioniert nicht. Ich denke, es könnte damit zu tun haben, dass der Button unter zwei div-Elementen eingebettet ist und blubbert.Knopf Klick-Methode wird zum Anfang der Seite scrollen, anstatt Aktion der Durchführung

My Button-Code ist:

<div class="col__7-12"> 
    <button class="u__right u__text--alternate u--paddingTop" (click)="cancelClicked()" >Cancel</button> 
</div> 

Die canceClicked() Methode ist:

cancelClicked(){ 
    window.history.back(); 
    return false; 
} 
+0

beim Aufruf der 'cancelClicked()' Verwendung Parameter '$ event' und schreiben auf diese Weise Methode' cancelClicked (event) { window.history.back (); event.preventDefault(); } ' – uzaif

+0

lassen Sie mich wissen, wenn Sie Problem haben .. – uzaif

+0

Sind Sie der Router? –

Antwort

0

Versuchen Sie es einmal mit: window.history.go(-1) und wie im Kommentar stellen Sie sicher, prevent erwähnt()

+0

Es war mein Verständnis, dass Return false auch funktionieren würde. Ich benutze Angular 2, nicht 1, also bin ich mir nicht sicher, ob das Passing-Ereignis genauso funktioniert? Es gab mir einen Fehler, der besagt, dass $ event in der Methode cancelClicked nicht definiert war. –

Verwandte Themen