2016-08-04 23 views
0

我有一个角度js表单和一个按钮,如果按下它,会显示登录字段(2个用户名和密码输入以及1个提交按钮)以及隐藏它的另一个按钮。angular ng-if true时自动发送表单

我已经使用ng-if指令编写了下面这个简单的代码。它正在工作罚款唯一的问题是,使用按显示登录后,显示div,但窗体正在提交自动(没有用户按下提交按钮)。

有人知道为什么会发生这种情况,以及如何解决它?

感谢

<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> 

回答

4

每个按钮内形式标签都有默认的行为 - 提交,以防止它添加类型=“按钮”到表单标签内的每个按钮。

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

这应该有助于 显示登录 这将防止其自动提交