我有一个包含两个日期字段的表单。这是一个非常大的形式,所以我只展示相关部分。
<input id="dateofassessment" name="dateofassessment" readonly="readonly" class='datebox' />
<input id="LastIncident" name="LastIncident" readonly="readonly" class="datebox" />
(我应该指出“dateofassessment”是表单中的第一项,“LastIncident”是最后一项)
我像这样附上了datepicker对象..
$(".datebox").datepicker({
dateFormat: 'dd-M-yy',
changeYear: true,
showButtonPanel: false
});
“dateofassessment”输入框完美运行。日历显示正常,点击日期填写“dateofassessment”字段 - 完美!
但是,“LastIncident”框不能很好地工作。单击它会显示日历确定。但是,选择日期不会填写表格。事实上,日历在“LastIncident”上关闭,并在我选择日期后立即在“dateofassessment”字段中重新打开。
我无法在Intranet网站上发布整个代码,因为它有大量代码。但希望我已经发布了相关部分。
仅供参考,这些字段“只读”的事实没有任何区别。
...版本 jQuery v1.5.1 Datepicker 1.8.9
答案 0 :(得分:1)
那是与datepicker相关的明显错误。绝对使用
$(".datebox").datepicker({
dateFormat: 'dd-M-yy',
changeYear: true,
showButtonPanel: false
});
尝试
$("#dateofassessment").datepicker({
dateFormat: 'dd-M-yy',
changeYear: true,
showButtonPanel: false
});
$("#LastIncident").datepicker({
dateFormat: 'dd-M-yy',
changeYear: true,
showButtonPanel: false
});
我知道这会让你重复自己,这很糟糕,但它可以帮助解决问题。或者你可以尝试另一个日期选择器。或者更新这个版本
答案 1 :(得分:0)
您的问题位于其他地方,请看这个按预期工作的小提琴:http://jsfiddle.net/AfmpL/
答案 2 :(得分:0)
您还可以使用.setDefaults使所有日期选择器的行为相同(我的主页中有我的,甚至在OnDocumentReady中也没有,因为我希望它在OnDocumentReady函数之前运行)。
$.datepicker.setDefaults({
showOn: "button",
buttonImage: "/Program/Images/calendar.png",
buttonImageOnly: true,
buttonText: ""
})
因此,你几乎不必重复自己。
$("#dateofassessment").datepicker();
$("#LastIncident").datepicker();
答案 3 :(得分:0)
尝试使用此JavaScript:
$(function() {
$( "#datepicker" ).datepicker();
$( "#datepicker" ).datepicker( "option", "dateFormat", "yy-mm-dd" );
});
$(function() {
$( "#datepicker2" ).datepicker();
$( "#datepicker2" ).datepicker( "option", "dateFormat", "yy-mm-dd" );
});
然后使用以下表单字段:
<input type="text" id="datepicker" name="fecha_ingreso" />
<input type="text" id="datepicker2" name="fecha_ingreso2" />