我已经创建了一个指令,它基本上显示空白输入以填充对象数组。对象有多个属性,但在这里我只填充projectname属性。
<div ng-repeat="projectStatus in projectStatusList track by $index">
<md-input-container>
<label>Project Name {{$index +1}}</label>
<input ng-model="projectStatusList[$index].projectName" name="projectName_{{$index+1}}" ng-required="isRowRequired($index)">
<div ng-messages="parentForm['projectName_{{$index+1}}'].$error">
<div ng-message="required">The project name is required</div>
</div>
</md-input-container>
</div>
在一个表单中调用此指令,该表单作为parentForm传递给它。我已经检查过,表单正在正确传递给指令。我怀疑ng-messages="parentForm['projectName_{{$index+1}}'].$error"
中的绑定没有正确发生。每当我检查生成的HTML时,ng消息div中都不会出现任何内容。
此外,字段的必需属性是通过isRowRequired($index)
动态设置的,这是正确呈现的。
问题是当输入为空且需要时输入带有红色边框的下划线,但消息不会出现。
答案 0 :(得分:2)
尝试:
<div ng-messages="parentForm['projectName_' + $index + 1].$error">