【发布时间】:2015-01-10 00:22:48
【问题描述】:
我在指令中使用了一个日期选择器来允许用户选择日期。我已禁用文本框,以强制用户仅使用 datepicker 小部件更改日期。指令如下:
function InformationDirective(){
return {
restrict: 'A',
link: function (scope, element, attrs, ngModelCtrl) {
var date = document.getElementById('reqDate');
$(date).datepicker($.extend({
dateFormat: 'm/d/y'
}
));
$("#calTrigger-btn").click(function(){
$(date).datepicker("show");
});
}
};
}
HTML如下:
<div information-directive>
<input id="reqDate"
ng-model="date"
type="text"
value="{{reqDate}}"
disabled/>
<div type="button" id="calTrigger-btn">
<img id="calendar-img" src="css\images\calendar.gif"></img>
</div>
</div>
由于某种原因,我的日期选择器只允许我选择一次日期,之后按钮将不会再次启动小部件。每次单击按钮时都会调用 $("#calTrigger-btn").click(function() 但在第一次选择后不会调用小部件。指令和所有内容都被添加到 html 中,唯一的问题是我在选择一次日期后无法使用日期选择器。我正在使用 Jquery-ui-1.8.15 并且无法将其更改为新的。我想知道是否有任何方法我可以解决这个问题。感谢提供任何帮助。谢谢。
【问题讨论】:
-
使用 'readonly' 和 'autofocus' 而不是 'disabled' 怎么样?
标签: javascript jquery jquery-ui datepicker