我使用代码创建了一个模态表单/窗口:
$(function () {
var widthLen = window.screen.width - 10;
var heightLen = window.screen.height - 120;
$("#dialogOperation").dialog({
width: widthLen,
height: heightLen,
closeOnEscape: true,
modal: true,
close: function () {
window.location.href = "OperationMenu.aspx"
}
});
});
带有一个文本框,其中附有日期选择器和按钮。一切正常,除了一个小问题——每次有回发时,日期选择器日历总是显示。在每个控制事件之后,日历都会出现。
我想要发生的是仅当我单击文本框时才显示日历,这在非模态对话框的表单中很常见。
当我尝试使用以下方法隐藏日期选择器时:
$(document).ready(function () {
$('#txtDate').datepicker('hide');
});
我只是无法再显示日历,即使我在文本焦点上调用它也是如此:
$("#txtDate").focus(function () {
$('#txtDate').datepicker();
}).blur(function() {
$('#txtDate').datepicker('hide');
});
我也试过将 z-index: 1003 放在 jquery css 中,但我还是不太走运。
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; z-index: 1003; }
任何能帮我解决这个问题的人都将不胜感激。
提前致谢!
问候, 哈兰德
最佳答案
您可以使用选项 showOn
http://docs.jquery.com/UI/Datepicker#option-showOn
或者先禁用日期选择器,然后使用对话框的open
事件启用它。关闭对话框时禁用。
open: function(){
$('#txtDate').datepicker('enable');
},
close: function() {
$('#txtDate').datepicker('disable');
}
关于javascript - 模态窗口中的 JQuery 日期选择器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8954758/