我有一个按钮,该按钮被设置为禁用,直到表单有效为止。但是,根据情况,某些表单字段也会被禁用。我的问题是,我只需要用户填写非禁用的表单字段,但是angular似乎并不能验证禁用的字段。

<button ng-click="form.checkVerify(); appCtrl.pageLoad('spec')" ng-disabled="checkVerifyForm.$invalid" class="btn btn-lg btn-success pull-right">Complete</button>

<form name="checkVerifyForm">
  <div class="col-md-6">
    <fieldset ng-disabled="!form.dataStore.reqMake">
<label for="makeRec">Maker Recourse</label>
      <div class="form-group">
        <label class="radio-inline">
          <input ng-change="form.justify()" ng-model="form.verify.mRec" type="radio" name="makeRec" id="makeRecYes" value="1" /> Yes
        </label>
        <label class="radio-inline">
          <input ng-change="form.justify()" ng-model="form.verify.mRec" type="radio" name="makeRec" id="makeRecNo" value="0" /> No
        </label>
        <span id="helpBlock" class="help-block">Is there adequete recourse...</span>
      </div>

现在,我已经看到一些非常密集的指令可以完成任务,但是在 Controller 中是否可以做一些简单的事情来克服这种特定情况?

最佳答案

您可以使用例如ng-required实现。

<input ng-change="form.justify()"
       ng-model="form.verify.mRec"
       type="radio"
       name="makeRec"
       id="makeRecYes"
       value="1"
       ng-required="form.dataStore.reqMake" /> Yes

AngularJS input documentation

08-25 13:26
查看更多