Javascript 自动完成与模态
我在这个div中有一个模态div和textbox。我想为textbox设置一个自动完成。要正确设置自动完成的z索引,请使用以下代码:Javascript 自动完成与模态,javascript,jquery,css,autocomplete,Javascript,Jquery,Css,Autocomplete,我在这个div中有一个模态div和textbox。我想为textbox设置一个自动完成。要正确设置自动完成的z索引,请使用以下代码: $('.autocompleteTextbox') .autocomplete("option", "appendTo", "#my_dialog"); 它工作得很好,但我想为许多模态div设置它,这些div是自动生成的 因此,我尝试以下代码: var ac = $('.autocompleteTextbox'); $('.modal').each(fu
$('.autocompleteTextbox')
.autocomplete("option", "appendTo", "#my_dialog");
它工作得很好,但我想为许多模态div设置它,这些div是自动生成的
因此,我尝试以下代码:
var ac = $('.autocompleteTextbox');
$('.modal').each(function(i,v) {
var id = v.id;
ac.autocomplete("option", "appendTo", id);
});
它不起作用
$('.modal').each(function(i,v) {
var id = v.id;
ac.autocomplete("option", "appendTo", v);
});
它也不起作用。如何正确操作?尝试以下方法:
$('.modal').each(function () {
$(this).find('.autocompleteTextbox').autocomplete("option", "appendTo", '#' + this.id);
});
另一个选项是将classui-front
添加到.modal
div。在这种情况下,您不需要指定选项,因为
如果找到具有ui front类的元素,菜单将附加到该元素
将div od的z索引更改为自动完成的结果: 如果是jquery.ui,则添加样式标记:
<style>
.ui-autocomplete {
position: absolute;
cursor: default;
z-index:999 !important;
}
</style>
.ui自动完成{
位置:绝对位置;
游标:默认值;
z指数:999!重要;
}
找到了解决方案
$('.modal').each(function(i,v)
{
$(this).find('.autocompleteTextbox').autocomplete("option", "appendTo", v);
});
或
或
我认为应该是
ac.autocomplete('option','appendTo','#'+id)代码>根本不起作用。即使在模态:)下,如果你直接复制,我在那里有一个拼写错误…你能发布你的HTML结构吗?我认为v.id
是个问题:)@OlegSh是的,如果你传递v
参数,它是v.id
,与this.id
@OlegSh是一样,对于id,它应该是#+this.id
,才能成为正确的CSS选择器。在这种情况下,simplev
看起来更好。@Chad不确定你想解释什么。当然,如果一个人使用这个,那么理解如何使用它以及它在什么上下文中使用是很重要的。在我的示例中,我知道这个
是什么,问题不会发生。或者$(v).find('.autocompleteTextbox').autocomplete({appendTo:v})代码>以使其尽可能简短:)
$('.modal').each(function(i,v)
{
$(this).find('.autocompleteTextbox').autocomplete("option", "appendTo", this);
});
$('.modal').each(function(i,v)
{
$(this).find('.autocompleteTextbox').autocomplete("option", "appendTo", '#' + this.id);
});