Angularjs 禁用
Angularjs ng-disabled
我有两个用于验证电子邮件和密码的输入。我可以看到以下作品的个人:
myForm.$error.required
正在使用所需的输入值验证输入表单
myForm.email.$valid
正在验证我的正则表达式电子邮件
如果我要打印,即 {{ 使用上面的代码}} 我可以看到输入验证的布尔结果及其正确性。
但是,当我在带有两个表达式的按钮上使用 ng-disabled 时,它不起作用,但是如果我只将 ng-disable 与一个表达式一起使用,我可以看到它确实有效,但我无法同时放置两个表达式,即
<button type="submit" ng-disabled="myForm.$error.required && !myForm.email.$valid">Sign in</button>
目前根据第一个表达式结果变为真,但我认为 && 意味着需要满足两个条件才能得到真?
难道是因为输出是 true + false = true 吗?
如果你想在整个表单无效时禁用按钮,你应该使用 ng-disabled="myForm.$invalid"。
如果你想在没有提供电子邮件或电子邮件无效的情况下禁用该按钮,那么你应该使用 ||而不是 && 因此在这两种情况下按钮都将被禁用。
true + false
不是true && false
,而是true || false
,
这就是为什么你没有得到正确的行为,所以:
<button type="submit" ng-disabled="myForm.$error.required || !myForm.email.$valid">Sign in</button>
我有两个用于验证电子邮件和密码的输入。我可以看到以下作品的个人:
myForm.$error.required
正在使用所需的输入值验证输入表单
myForm.email.$valid
正在验证我的正则表达式电子邮件
如果我要打印,即 {{ 使用上面的代码}} 我可以看到输入验证的布尔结果及其正确性。 但是,当我在带有两个表达式的按钮上使用 ng-disabled 时,它不起作用,但是如果我只将 ng-disable 与一个表达式一起使用,我可以看到它确实有效,但我无法同时放置两个表达式,即
<button type="submit" ng-disabled="myForm.$error.required && !myForm.email.$valid">Sign in</button>
目前根据第一个表达式结果变为真,但我认为 && 意味着需要满足两个条件才能得到真? 难道是因为输出是 true + false = true 吗?
如果你想在整个表单无效时禁用按钮,你应该使用 ng-disabled="myForm.$invalid"。
如果你想在没有提供电子邮件或电子邮件无效的情况下禁用该按钮,那么你应该使用 ||而不是 && 因此在这两种情况下按钮都将被禁用。
true + false
不是true && false
,而是true || false
,
这就是为什么你没有得到正确的行为,所以:
<button type="submit" ng-disabled="myForm.$error.required || !myForm.email.$valid">Sign in</button>