【发布时间】:2014-12-10 08:54:29
【问题描述】:
我正在使用带有一些服务器端 asp:TextBox(创建)的 Jquery Datepicker UI 1.8.20。 要将 Datepicker 与文本框相关联,我向它们添加了一个类,然后在 body 标记之后执行以下操作:
$('body').on('focus', ".datepicker_input", function() {
...
});
这很好,但是现在,我还在这个文本框服务器端填充了一个日期(以预定义的格式 dd-MM-yyyy),并且我试图将 datepicker 默认日期设置为相同它的文本框,但到目前为止我还没有做到。
我做了一些尝试:
$('body').on('focus', ".datepicker_input", function() {
$(this).datepicker({
defaultDate: $.datepicker.parseDate("dd-MM-yy", $(this).value),
...
});
错误:未捕获的无效参数
$('body').on('focus', ".datepicker_input", function() {
$(this).datepicker({
defaultDate: $.datepicker.parseDate("dd-MM-yy", this.value),
...
});
错误:位置 3 处未捕获的未知名称
我试图在 chrome 中调试 jquery 以查看 $(this) 是什么并且我得到了 window 对象,所以我想这就是问题所在。我不知道如何调用关联对象到日期选择器...
更新 1 - 完整的 DatePicker 代码
$('body').on('focus', ".datepicker_input", function() {
$(this).datepicker({
defaultDate: $.datepicker.parseDate("dd-MM-yy", $(this).value),
minDate: 0,
beforeShowDay: $.datepicker.noWeekends,
changeMonth: true,
changeYear: true,
numberOfMonths: 1
});
$.datepicker.regional['pt-PT'] = {
closeText: 'Fechar',
prevText: '',
nextText: '',
currentText: 'Hoje',
monthNames: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro',
'Outubro', 'Novembro', 'Dezembro'],
monthNamesShort: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro',
'Outubro', 'Novembro', 'Dezembro'],
dayNames: ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sabado'],
dayNamesShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab'],
dayNamesMin: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab'],
weekHeader: 'Sm',
dateFormat: 'dd-mm-yy'
};
$.datepicker.setDefaults($.datepicker.regional['pt-PT']);
【问题讨论】:
标签: javascript jquery asp.net jquery-ui datepicker