我有一个正在使用JQuery UI的应用程序。此应用程序需要打开一个对话框,并显示两个日期选择器。目前,我已经让对话框工作了。我还有两个日期选择器。我的问题是: a)日期选择器的默认日期没有显示,b)当我打开对话框时,"from“日期选择器自动打开。下面是初始化对话框和日期选择器的代码:
<div id="myDialog" title="Other Date Range" style="display:none;">
<table border="0">
<tr>
<td>From</td>
<td></td>
<td>To</td>
</tr>
<tr>
<td><input id="fromOtherDateTextBox" style="width:140px;" /></td>
<td> - </td>
<td><input id="toOtherDateTextBox" style="width:140px;" /></td>
</tr>
<tr>
<td>mm/dd/yyyy</td>
<td></td>
<td>mm/dd/yyyy</td>
</tr>
</table>
</div>
$(document).ready(function () {
$("#fromOtherDateTextBox").datepicker({
defaultDate: "-1d",
maxDate: 0,
minDate: new Date(2000, 1, 1)
});
$("#toOtherDateTextBox").datepicker({
defaultDate: "0d",
maxDate: 0,
minDate: new Date(2000, 1, 1)
});
$("#myDialog").dialog({
autoOpen: false, modal: true,
show: "fade", hide: "fade",
height:220, width:350,
buttons: {
'Cancel': function () { $(this).dialog('close'); },
'View': useOtherDate_Click
}
});
});下面是我用来打开对话框的代码:
$("#myDialog").dialog("open");我做错了什么?
谢谢!
发布于 2013-03-13 20:57:09
问题是当对话框打开时,焦点被设置为date控件,这会导致datepicker打开。
一种可能的解决方案是为tabIndex=1分配数据控件以外的元素。
<div id="myDialog" title="Other Date Range" style="display:none;">
<table border="0" tabIndex="1">演示:Fiddle
defaultDate property不会为输入控件设置默认日期,它只会突出显示弹出窗口中的日期。如果查看datepicker弹出窗口,您会发现set defaultDate突出显示
发布于 2013-11-13 19:13:27
尝试在初始化datepicker组件后调用close()方法。
$("#fromOtherDateTextBox").datepicker({ /* ... */}).close();https://stackoverflow.com/questions/15385751
复制相似问题