角度时间验证

时间:2016-05-09 08:16:14

标签: angularjs validation

在下面的代码示例中,我创建了一个输入来为ex获取时间。会议结束了。

           <input ui-timepicker
                                   name="EventTimePickerTo"
                                   id="EventTimePickerTo"
                                   class="form-control"
                                   autocomplete="off"
                                   attachlevel="-1"
                                   placeholder="@WebResources.PlaceholderEndTime"
                                   ng-model="EventDetails.DateTimeTo"
                                   time-pattern="@ValidatorRegex.ValidTimeOrEmpty"
                                   ng-disabled="EventDetails.Permissions.TimePickerDisabled"
                                   ng-change="SaveEventDetails()"
                                   ng-blur="SaveEventDetails()" />

我想要的是验证输入的最长时间应为14:00,并在时间> 14:00时打印错误消息。 不幸的是,ng-max不起作用.. 欢迎任何帮助!

2 个答案:

答案 0 :(得分:0)

尝试使用minmax属性,但将日期设置为字符串。 例如

<input class="col-xs-12 -th-txt" type="date" name="date_field_{{field.Id}}"
                       ng-if="field.ValidationMinValue && field.ValidationMaxValue"
                       ng-required="field.Required"
                       min="{{field.ValidationMinValue}}"
                       max="{{field.ValidationMaxValue}}"
                       ng-model="field.model" />

答案 1 :(得分:0)

由于某些原因,ng-max(或max)不与ui-timepicker合作。所以,我把检查放在allready existing函数中:

   var hoursfromdate = ed.DateTimeTo.getHours();
                        if (hoursfromdate > "14") {
                            console.log("not a valid time!");
                        } else
                            console.log("valid time!");

我遇到的一个问题是无法将日期时间变量与时间进行比较!所以我不得不提取小时信息..