Javascript 使用多个条件禁用ng

Javascript 使用多个条件禁用ng,javascript,forms,angularjs,Javascript,Forms,Angularjs,如果用户未在字段中键入至少50个字符,我希望禁用表单中的“提交”按钮。我考虑过使用这样的条件: ng-disabled="addJobForm.$invalid && myInput.length > 50" {{addJobForm.$invalid && myInput.length > 50}} 但是它不起作用。我不明白的是,如果我像这样打印条件的值: ng-disabled="addJobForm.$invalid && m

如果用户未在字段中键入至少50个字符,我希望禁用表单中的“提交”按钮。我考虑过使用这样的条件:

ng-disabled="addJobForm.$invalid && myInput.length > 50"
{{addJobForm.$invalid && myInput.length > 50}}
但是它不起作用。我不明白的是,如果我像这样打印条件的值:

ng-disabled="addJobForm.$invalid && myInput.length > 50"
{{addJobForm.$invalid && myInput.length > 50}}
这些值是正确的


我做错了什么?

我建议您在输入元素中使用ng minlength=50,并删除submit按钮的第二个条件。因此,在输入字段无效之前,submit按钮将保持禁用状态。还有其他属性,如ng maxlength或ng pattern(用于正则表达式)


有关更多详细信息,请阅读本文档。

尝试将此代码移到范围内。差不多

$scope.invalidFormOrLimitExceeded = function() { 
   return 'addJobForm.$invalid && myInput.length > 50'
}

ng-disabled="invalidFormOrLimitExceeded()"

看看是否有帮助

试着用
替换“&&&&

看起来不错。。。ng禁用期望表达式,因此不应使用{{addJobForm.$invalid&&myInput.length>50}。。。下面是Plunk添加ng minlength以禁用提交按钮的工作方式。但是,我有一个字符计数器(即输入至少{{50-myInput.length}}}个字符),当我添加ng minlength时,该计数器停止工作。知道为什么吗?