为什么我的过滤按钮列表不能在Angular中验证?

时间:2016-02-16 19:29:32

标签: javascript angularjs forms validation

我正在开发Angular中的多步骤表单。表单上的一个步骤是选择一个过程类型,这可能会成为一个很长的列表。我决定添加基本搜索功能以缩小列表范围。

过程类型列表输出到包含ng-repeat和过滤器的表中:

<tr ng-repeat="procedure in procedureTypes
               | filter: query
               | orderBy:orderProp
               as filteredProcedureTypes">
  <td >
    <input
      type="radio"
      name="procedureType"
      id="procedureFormProcedureType"
      ng-model="newProcedure.procedureType"
      value="{{procedure.id}}"
      required>
  </td>
  <td>{{procedure.ncdManualId}}</td>
  <td>{{procedure.name}}</td>
  <td>{{procedure.id}}</td>
</tr>

检查控制器中的输入:

if ($scope.newProcedureForm.procedureType.$invalid){
      return false;
    }

在检查未过滤列表时以及查询未删除任何项目时,验证有效。当查询删除1个或多个项目时,我得到

TypeError:无法读取未定义的属性'$ invalid'

newProcedurenewProcedureForm在控制台中显示为对象,但在查询改变单选按钮列表后,我无法弄清楚为什么newProcedureForm.procedureType变为未定义。

0 个答案:

没有答案