【发布时间】:2011-01-04 17:27:24
【问题描述】:
我想在我的一个文本输入中使用 jQuery UI 日期选择器。这是一个对话框模式。
事实上,我可以在普通文档文本输入中调用 datepicker,并且我可以正常获取日历,但我无法在对话框模式文本输入中执行此操作(在模式文本输入中叮当一声后,我没有任何 JavaScript 错误)。
这是我调用 datepicker 的代码:
$(function() {
$("#MytextInputID").datepicker({ dateFormat: 'dd/mm/yy' });
);
我尝试更改 css .ui-datepicker Z-index 属性,但仍然一无所获。
您有解决此问题的提示吗?
问候,
在 my_page.html 我有
function openSaisieARModal()
{
window_select_CodeAgence = new showModalWindow('SaisieARModal', 500);
}
我使用这个脚本
var showModalWindow=function(id, width)
{
var newId=id+'Copy';
this.id=newId;
var previousNode=document.getElementById(newId);
if(previousNode!=null)
{
previousNode.parentNode.removeChild(previousNode);
}
var rootNode=document.getElementsByTagName('body')[0];
this.node=document.createElement("div");
rootNode.appendChild(this.node);
this.node.setAttribute('id', newId);
this.node.setAttribute('title', document.getElementById(id).getAttribute('title'));
this.node.innerHTML=document.getElementById(id).innerHTML;
if(width==null)
{
width=400;
}
$('#'+newId).dialog({autoOpen: true, modal: true, width:width });
this.closeWindow=function()
{
$('#'+this.id).dialog('close');
}
this.centerContent=function()
{
this.node.style.textAlign='center';
}
this.center=function()
{
$('#'+this.id).dialog('option', 'position', 'center');
}
}
这是 my_page.html 中的模态 HTML 代码
<div style="display:none;">
<div id="SaisieARModal" title="DATE">
<table class="tableFrame" cellspacing="0px" width="100%">
<tr>
<td class="topLeft">
</td>
<td class="topCenter">
</td>
<td class="topRight">
</td>
</tr>
<tr>
<td class="middleLeft">
</td>
<td class="middleCenter">
<table>
<tr align="center">
<td>
Date
</td>
<td>
<input id="MyTextInputID" type="text" />
</td>
</tr>
</table>
</td>
<td class="middleRight">
</td>
</tr>
<tr>
<td class="bottomLeft">
</td>
<td class="bottomCenter">
</td>
<td class="bottomRight">
</td>
</tr>
</table>
<div>
</div>
</div>
</div>
【问题讨论】:
-
我假设您将值更改为 z-index (9999) 上相当大的值?
-
确实,但我也试过 1000 -> 1003 没有任何变化
-
您包含了调用日期选择器的代码,但没有说明它何时运行。我会检查 1) 它是否正在运行和 2) 它是否正在运行 在 创建模态并且 #MytextInputID 存在于 DOM 中,以便可以绑定 datepicker。 Firebug 断点可以帮助您解决这个问题。
-
你说点击给你一个javascript错误,你能更新问题并包括那个错误是什么吗?
-
致 Brian Pan 1) 是的,调用 datepicker 的代码正常运行导致它们在调用正常文本输入时没有问题(例如,任何文本输入不包括在我的模态中)2)它正在运行创建模态后,当我单击模态中包含的文本输入“MytextInputID”时调用 datepicker(因此在创建模态之前我无法调用 datepicker)
标签: jquery datepicker jquery-ui-datepicker uidatepicker