2016-08-04 7 views
0

Ich habe eine eckige js Form und eine Schaltfläche, die, wenn gedrückt, zeigt die Login-Felder (2 Eingaben für Benutzername und Passwort und 1 Senden) und eine andere Schaltfläche, die es verbirgt .angular ng-wenn automatisch ein Formular sendet, wenn true

Ich habe diesen einfachen Code geschrieben, der die ng-if Direktive verwendet. es funktioniert gut nur Problem, dass nach der Verwendung auf Show Login drücken, das Div wird angezeigt, aber das Formular wird automatisch gesendet (ohne den Benutzer auf die Schaltfläche Senden drücken).

jemand weiß, warum das passiert und wie es zu beheben?

dank

<form name="loginForm" width="70%"> 

    <br> 
    <button ng-click="NewConversation=true" >show login</button> 
    <button ng-click="NewConversation=false" >hide login</button> 
    <br><br> 
    <div ng-if="NewConversation"> 
     <input autocomplete="off" name="name" ng-model="name" required placeholder="Name"> 
     <br> 
     <input autocomplete="off" name="room" ng-model="room" required placeholder="Room"> 
     <br><br> 
     <button ng-click="updateMsg({name: name,room: room})">Start Talking!</button> 
    </div> 

</form> 

Antwort

4

Jede Taste innerhalb Form Tag Standardverhalten hat - einreichen, es type = "button" innerhalb des Formular-Tag zu jeder Taste verhindern hinzuzufügen.

<button type="button" ng-click="NewConversation=true" >show login</button> 
0

Dies sollte anzeigen Anmelden helfen diese es von der Abgabe automatisch

verhindern
Verwandte Themen