创建了一个使用jquery datepicker将输入元素转换为Calendar的指令。输入元素是使用ng-repeat生成的,因此它们具有动态id。
<div ng-repeat="id in ids"><input type="text" id="{{'txtDate' + id}}" ng-model="selectedDate" set-mask /></div>
datepicker将输入元素id注册为角度表达式 - 输入#{{&#39; txtStartDate&#39; + id}}。所以我无法选择日期。它会为此日期选择器&#34;。
抛出&#34; Uncaught Missing实例数据如果angular评估表达式并设置输入的id,我该如何创建一个日期选择器。
答案 0 :(得分:1)
您需要在DOM中呈现元素后创建一个日期选择器。
喜欢这个
app.directive("setMask", function($compile, $timeout) {
return {
restrict: "A",
link: function(scope, element, attrs) {
element.mask('99/99/9999');
$timeout(function() { //Delay init
element.datepicker({
changeMonth: true,
changeYear: true,
yearRange: '1930:' + (new Date).getFullYear()
});
})
}
};
});
上的示例