2017-04-06 82 views
0

我有一个文本输入框和一个嵌入的日期选择器。问题是我们关注甚至点击输入字段ng-focus或ng-click在角度上不能正常工作

日期选取器未显示。

但是,如果您在控制台中放置调试器并进行调试,则会显示输入字段何时关注或单击。

<div class="row"> 
       <input id="field" placeholder="Choose Date" class="span-12" ng-model="vm.date" ng-blur="vm.onSaveTime()" ng-focus="vm.showDatePicker()"> 
    </div> 

下面是代码

vm.showDatePicker = function(){ 
    debugger; 
    var options = { 
     format:"YYYY-MM-DD" 
    }; 
    $('#field').datepicker(options); 
} 

日期选择器最初不显示在页面加载时,如果你没有在控制台调试或者,如果你不点击面板中的其它领域然后点击它。

这是为什么?

回答

0

它可能会帮助你

<div id="wrapper" ng-app="myApp"> 
<p>{{datePicker || "00/00/0000"}}</p> 
<input type="text" ng-model="datePicker" datepicker /> 
</div> 

var myApp = angular.module('myApp', []); 

myApp.directive("datepicker", function() { 
return { 
restrict: "A", 
require: "ngModel", 
link: function (scope, elem, attrs, ngModelCtrl) { 
    var updateModel = function (dateText) { 
    scope.$apply(function() { 
     ngModelCtrl.$setViewValue(dateText); 
    }); 
    }; 
    var options = { 
    dateFormat: "dd/mm/yy", 
    onSelect: function (dateText) { 
     updateModel(dateText); 
    } 
    }; 
    elem.datepicker(options); 
} 
} 
}); 

https://codepen.io/anon/pen/BWeWVp