這聽起來像你想空行是有效的,但非空行中的空輸入字段是無效的。
要達到此目的,您可以使用ng-required
向每個字段添加條件要求,以便僅在行中其他位置至少有一些文本時才需要。
從你plunkr,你可以在每個輸入與ng-required
替換required
:
<li ng-repeat="cell in cells">
<input type="text" name="dest" ng-model="cell.dest" placeholder="Destination Link" ng-required="cell.src || cell.name"/>
<input type="text" name="src" ng-model="cell.src" placeholder="Image Link" ng-required="cell.dest || cell.name"/>
<input type="text" name="cellName" ng-model="cell.name" placeholder="Name" ng-required="cell.src || cell.dest"/>
</li>
爲了提高可伸縮性,你也可以定義在小區對象或控制器的方法來評估一個單元對象是否爲空:
function cellCtrl($scope) {
...
$scope.isBlankCell = function(cell) {
...
}
}
,並呼籲從模板方法:
<li ng-repeat="cell in cells">
<input type="text" name="dest" ng-model="cell.dest" placeholder="Destination Link" ng-required="isBlankCell(cell)"/>
<input type="text" name="src" ng-model="cell.src" placeholder="Image Link" ng-required="isBlankCell(cell)"/>
<input type="text" name="cellName" ng-model="cell.name" placeholder="Name" ng-required="isBlankCell(cell)"/>
</li>
這工作現場,謝謝你的幫助。你已經恢復了對互聯網人性的信心。 – whomba
高興地幫助:) – starchild