我遇到了一个对话框中jQueryUI自动完成的有趣问题。jQueryUI自动完成不与对话框和zIndex一起工作
我的对话框HTML看起来像这样:
<div id="copy_dialog">
<table>
<tbody>
<tr>
<th>Title:</th>
<td><input type="text" class="title" name="title"></td>
</tr>
<tr>
<th>Number:</th>
<td><input type="text" name="number"></td>
</tr>
</tbody>
</table>
</div>
当我运行在上面的HTML jQueryUI的自动完成功能,它可以完美运行。
当我打开它在Firebug使用对话框
$('#copy').click(function()
{
$('#copy_dialog').dialog({
autoOpen: true,
width: 500,
modal: false,
zIndex: 10000000,
title: 'Duplicate',
buttons: {
'Cancel': function()
{
$(this).dialog('close');
},
'Save': function()
{
$(this).dialog('close');
}
}
});
return false;
});
然后,我可以看到自动完成仍然是工作。它请求并接收结果,但我不再看到输入字段下方的选项列表。
我的想法是,这与对话框中的zIndex比自动完成菜单给出的zIndex有关,但我不确定。 我仍在研究发生了什么的确切细节,但我希望这里有人会对我有一些想法。
编辑 我试着从对话框中删除zIndex,我的自动完成开始显示出来。 不幸的是,我需要这个zIndex值来获取菜单栏的可怕的高zIndex,这是我无法改变的(无法访问该代码的区域)。因此,如果有一种方法可以将zIndex添加到自动完成功能中,那就太棒了;在此之前,我可能会从对话框中删除zIndex,并确保它不会显示在菜单栏区域周围。
这工作完美!谢谢! – 2011-12-31 01:41:08
当返回的列表长度超过模式对话框的高度时,这不起作用,在这种情况下,这些项目只显示在对话框的顶部,一旦它们通过它们的底部,它们全部隐藏起来。 – salonMonsters 2013-04-15 19:07:17
它就像一个魅力!非常感谢! – frabiacca 2014-06-26 15:14:11