使用几个条件进行ng-disabled

时间:2014-04-07 09:52:22

标签: javascript forms angularjs

如果用户未在字段中输入至少50个字符,我想在表单中禁用我的提交按钮。我曾想过使用这样的条件:

ng-disabled="addJobForm.$invalid && myInput.length > 50"

然而它不起作用。我不明白的是,如果我打印我的条件的价值如下:

{{addJobForm.$invalid && myInput.length > 50}}

值正确。

我做错了什么?

3 个答案:

答案 0 :(得分:1)

我建议您在输入元素中使用 ng-minlength = 50 ,并从提交按钮中删除第二个条件。直到您的输入字段无效,提交按钮仍处于禁用状态。还有其他属性,如ng-maxlength或ng-pattern(对于正则表达式)。

有关详情,请参阅此文档Angular's input validation

答案 1 :(得分:0)

尝试将此代码移至范围内。像

这样的东西
$scope.invalidFormOrLimitExceeded = function() { 
   return 'addJobForm.$invalid && myInput.length > 50'
}

ng-disabled="invalidFormOrLimitExceeded()"

看看是否有帮助

答案 2 :(得分:0)

尝试更换“&&”按& &