AngularJS ng禁用,不在内部工作<;td>;要素
我有一个名为rtpUniqueWeatherSetting的属性指令,它应用一个$validator来检查数组的唯一性。以下是观点:AngularJS ng禁用,不在内部工作<;td>;要素,angularjs,validation,Angularjs,Validation,我有一个名为rtpUniqueWeatherSetting的属性指令,它应用一个$validator来检查数组的唯一性。以下是观点: <form name="newform"> <div> Form is valid: {{newform.$valid}} </div> <td> <input type="submit" ng-disabled="newf
<form name="newform">
<div>
Form is valid: {{newform.$valid}}
</div>
<td>
<input type="submit" ng-disabled="newform.$invalid"
class="btn btn-primary" ng-click="saveNew()"
value="Submit" />
<button class="btn btn-default" ng-click="cancelNew()">Cancel</button>
</td>
<td>
<input required rtp-unique-weather-setting type="number" ng-model="newSetting[fromProp]" name="newSettingFrom" />
</td>
<td>
<input required type="number" ng-model="newSetting[rankProp]" name="newSettingRank" />
</td>
</form>
我有一个
$watch
正在观察ngModelController。$invalid prop,我正在将值传递给控制台。长话短说,验证器工作正常,只要需要,$invalid属性就会被设置为true,反之亦然。不过,ng disabled似乎并不像我所说的那样有效。如果您认为td会导致问题,请尝试下面的方法
不要使用td而使用div并为该div应用cssdisplay:table cell
要使对齐到中心,请使用css
{
display: table-cell;
vertical-align: middle;
text-align: center;
}
如果自定义验证器导致了问题,您应该向我们展示该代码。我的错。我添加了它。console.logs似乎正在按预期返回值。我现在唯一的线索是,不知何故,范围变得混乱,模型没有添加到public formController?您使用的是
ng repeat
?这是否会导致输入的名称
属性重复?有一个ng repeat
,但它位于带有此表单的属性上方的
。名称属性也不同。
元素唯一允许的父元素是
元素。有关详细信息,请参阅。
{
display: table-cell;
vertical-align: middle;
text-align: center;
}