日期选择器不突出显示所选日期

时间:2015-06-05 11:28:25

标签: javascript jquery asp.net-mvc angularjs datepicker

我在MVC 5 Web应用程序中使用Angular.js。我的网页上有日期选择器。

指令

myApp.directive('datepicker', function () {
return {
    restrict: 'A',
    require: 'ngModel',
    link: function (scope, element, attrs, ProfileCtrl) {
        element.datepicker({
            autoclose: true,
            onSelect: function (date) {
                ProfileCtrl.$setViewValue(date);
                scope.$apply();
            }
        });
    }
};});

输入标记

<div class="form-group">
    <label for="dob" class="col-sm-4 control-label text-left">DOB</label>
    <div class="col-md-8">
       <input type="text" datepicker name="dob" class="form-control" ng-model="models.DOB" />
    </div>
 </div>

每件事都很好。

enter image description here

但是我遇到了一个问题,当我尝试将日期值从数据库加载到文本框时,日期选择器不会突出显示所选日期,日期选择器dateformat与文本框不同。请参见下图。

enter image description here

1 个答案:

答案 0 :(得分:1)

尝试使用此代码更正日期格式并检查

    $scope.models.DOB=GetFormattedDate(models.DOB);
    function GetFormattedDate(dateString, replaceNullValue) {
         if (replaceNullValue == false && IsBlank(dateString)) {
           return "";
         }
        var dt = dateString != null ? new Date(dateString) : new Date();
        var d = dt.getDate();
        var dd = d < 10 ? "0" + d : d;
        var m = dt.getMonth() + 1;
        var mm = m < 10 ? "0" + m : m;
        var y = dt.getFullYear();
        return mm + "/" + dd + "/" + y;
    }