开始日期和结束日期验证angularjs

时间:2016-03-08 11:53:26

标签: angularjs

这不是this

的副本

我有一个表单,其中包含日期选择器的开始日期和结束日期。用户可以在表单中添加多个日期。在这种情况下,第一个从日期和日期选择框将被克隆并附加到表单。

我需要检查每个日期和日期对中日期的有效性。也就是说,如果到目前为止小于日期错误消息应该显示在日期附近。我在下面添加了代码。感谢。

<form name="myForm">
    <span ng-repeat="data in userdata">
    <ng-form name="repeatForm">
        <input type="text" name="expFromDate" ng-model="form.fromDate"/>
        <input type="text" name="expToDate" ng-model="form.toDate"/>
        <span class="error input-icon fui-alert input-icon-check" ng-show="repeatForm.expToDate.$error.expFromDate"></span>
    </ng-form>
</form>

1 个答案:

答案 0 :(得分:0)

不应使用jQuery左右克隆日期框,而应使用ng-repeat,如:

<input ng-repeat="fromDate in ctrl.fromDates" type="text" name="expFromDate" ng-model="fromDate"/>
<input ng-repeat="toDate in ctrl.toDates" type="text" name="expFromDate" ng-model="toDate"/>

然后你可以在你的控制器上有一个方法来进行验证:

<span class="error input-icon fui-alert input-icon-check" ng-show="!ctrl.datesValid()"></span>

public datesValid(): boolean {
    return _.all(this.fromDates, date => ...)
        && _.all(this.toDates, date => ...);
};
相关问题