2015-05-19 140 views
0

我想要输入第二个密码才能在用户开始输入第一个输入后显示。此外,是否有办法“要求”他们两个或根本没有?以html格式显示/隐藏输入

<form name="signUpForm"> 
    ... 

    <input ng-modal="password" type="password" placeholder="password"> 
    <input ng-show="password.$dirty" class="animate-show animate-hide" type="password" placeholder="password (again)"> 
</form> 
+0

'ng-modal'必须是'ng-model'。您的输入必须有一个名称(例如“password”),并且访问其脏标志的正确方法是使用'signupForm.password。$ dirty'。 –

+1

@Jackson,angularjs文档在这里显示了很好的例子:[docs](https://docs.angularjs.org/api/ng/directive/input)也看到我在下面发布的使用'$ valid'和'required的答案'。 GL! –

回答

1

密码没有像$ dirty这样的属性,但表单控制器有那个。因此,首先输入的集名,那么你可以访问形式控制器,它

<form name="signUpForm"> 
... 

    <input name="passwordNameAttr" ng-modal="password" type="password" placeholder="password"> 
    <input ng-show="signUpForm.passwordNameAttr.$dirty" class="animate-show animate-hide" type="password" placeholder="password (again)"> 
</form> 

动态需要,您可以使用NG-需要。只要把为一个函数就可以了,并视情况而定你的领域将被要求或不...

+0

我不知道为什么它不是动画,但至少我的额外输入显示/隐藏了。 – Jacksonkr

1

另一个例子使用ng-show$validrequired输入字段..

HTML:

<form name="signUpForm"> 
    <input name="firstPassword" ng-model="first.password" type="password" placeholder="password" required> 
    <input name="secondPassword" ng-show="signUpForm.firstPassword.$valid" ng-model="second.password" type="password" placeholder="password (again)" required> 
</form> 

这里工作的小提琴:https://jsfiddle.net/vj5evgyw/2/