javascript - JQuery autcomplete在对话框中不起作用
问题描述
我正在尝试将 jQuery AutoComplete 应用于对话框中的文本框。下面是代码。
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++"
];
$("#status").autocomplete({
source: availableTags,
appendTo: "#dialogId"
});
<input type="text" aria-labelledby="status" class="form-control form-control-sm col-8" id="status" />
在这种方法中,自动完成功能不起作用。自动完成 CSS 和autocomplete="off"/"on"
标签未应用于文本框。
如果我尝试在父页面中应用它,它会按预期工作,如下所示。
<input type="text" class="form-control form-control-sm col-8 ui-autocomplete-input" id="auto" autocomplete="off">
请帮助我在这里缺少的东西。
提前致谢。
解决方案
问题是因为在实例化自动完成时对话框不可见,因此插件不知道在屏幕上的哪个位置放置选项下拉菜单。
要解决此问题,请仅在屏幕上显示对话框后实例化自动完成控件。当您使用 jQueryUI 时,您需要将事件处理程序挂钩到open
对话框的事件并$("#status").autocomplete()
在那里调用。
推荐阅读
- architecture - 为什么现代处理器仍然使用有序流水线?
- jquery - Fantasybox首先加载到我的页面图标下并疯狂放大
- python - Django 没有将 Heroku Websokect 路由到 dyno
- asp.net-core-2.0 - 身份服务器脱机时验证 access_token
- c# - 参数中的委托
- python - 尝试在没有 forms.py 的情况下使用文件上传 - 'InMemoryUploadedFile' 对象不可调用
- vba - 如何快速切换 VBA 中正在编辑的工作表/工作簿
- reactjs - 如何重构这个新组件?
- java - 如何检查抽象对象的实例是否属于特定的子类
- machine-learning - Azure 机器学习中的图像分类