如何仅以角度为单位接受日期作为bootstrap datepicker的输入字段值

时间:2016-03-02 17:47:55

标签: html angularjs twitter-bootstrap validation bootstrap-datepicker

HTML

                 <form name="eventInformation" id="eventInformation"><label class="required"> Occurence Date </label>
                     <p class="input-group">
                       <input type="text" class="form-control" uib-datepicker-popup="{{format}}" ng-model="formData_EventDetails.eventOccurDate"
                              is-open="popup[0].opened" datepicker-options="dateOptions" close-text="Close" required/>
                    <span class="input-group-btn">
                    <button type="button" class="btn btn-default" ng-click="open(0)"><i class="glyphicon glyphicon-calendar"></i></button>
                    </span>
                    </p>

                <div class="col-sm-2 pull-right">
                          <button class="btn btn-block btn-primary ebtn"
                                  ng-disabled="eventInformation.$invalid"
                                  ng-click="submit()">Save</button>
                      </div>
</form>

的JavaScript

                        $scope.format = 'yyyy/MM/dd';


                        $scope.dateOptions = {
                            formatYear : 'yy',
                            startingDay : 1
                        };

                        $scope.popup = [];
                        for (i = 0; i < 10; i++) {
                            $scope.popup[i] = {
                                opened : false
                            };
                        }

                        $scope.open = function(i) {
                            $scope.popup[i].opened = true;
                        };

我有bootstrap datepicker元素,我试图只接受日期作为输入,但它接受所有类型的输入,即字符串,数字等。我如何限制所以它只需要日期作为输入

1 个答案:

答案 0 :(得分:0)

由于它是输入文本框,因此您无法限制用户输入无效字符(默认行为)。

但是,当用户提供错误的日期时,您可以停止模型更新操作(为此您需要在输入元素上设置以下属性)

ng-model-options="{allowInvalid: false}"