我有以下html表单
<form name="enviarAutorizacao" id="enviarAutorizacao" novalidate>
<label class="form-label-gray">autorization</label>
<input class="form-control col-sm-6" ng-model="current.autorizacao" id="autorizacao" ui-mask="" maxlength="20" required>
<div class="form-group col-sm-8">
<label class="form-label-gray"> Value </label>
<div class="form-group col-sm-2 form-label-gray">
<label>$</label>
</div>
<div class="form-group col-sm-9">
<input class="form-control" maxlength="16" ng-model="current.valor" required id="valor">
</div>
</div>
<div class="form-group col-sm-12">
<button class="btn btn-default" ng-disabled="enviarAutorizacao.$invalid || enviarAutorizacao.$pristine" id="submit-representante-estabelecimento" ng-click="validateAssociate()">click me</button>
</div>
</form>
我正在尝试启用提交按钮,仅当填充了2个输入时,但是当我输入第一个输入(autorizacao)时它正在启用。
我尝试了一些替代方案,例如更改&#34; ng-disabled =&#34; enviarAutorizacao。$ invalid&#34; to&#34; ng-disabled =&#34;!enviarAutorizacao。$ valid&#34;,但没有用。
这个html出了什么问题?
答案 0 :(得分:1)
如果您使用enviarAutorizacao.autorizacao.$invalid
,您将知道“autorizacao”输入是否无效。
[form id].[input name].[$valid or $invalid or $dirty...]
所以你的代码应该是这样的: 我更改了输入的名称并提交了ng-disabled
<form name="enviarAutorizacao" id="enviarAutorizacao" novalidate>
<label class="form-label-gray">autorization</label>
<input class="form-control col-sm-6" ng-model="current.autorizacao" id="autorizacao" ui-mask="" maxlength="20" name="autorizacao" required>
<div class="form-group col-sm-8">
<label class="form-label-gray"> Value </label>
<div class="form-group col-sm-2 form-label-gray">
<label>$</label>
</div>
<div class="form-group col-sm-9">
<input class="form-control" maxlength="16" ng-model="current.valor" required id="valor" name="valor">
</div>
</div>
<div class="form-group col-sm-12">
<button class="btn btn-default" ng-disabled="enviarAutorizacao.autorizacao.$invalid || enviarAutorizacao.valor.$invalid" id="submit-representante-estabelecimento" ng-click="validateAssociate()">click me</button>
</div>
</form>
答案 1 :(得分:-2)
尝试单独使用实际输入的ID作为禁用ng的参数。
或者你可以检查current.autorizacao和current.valor的有效性并使用它们。