【发布时间】:2013-10-01 14:08:14
【问题描述】:
我有一个带有 jQueryUI 自动完成功能的文本框。我想将结果附加到 ID 为#catcher 的 div 中。目前,结果仅直接附加在文本输入下方。您可以看到我尝试在自动完成初始化中指定 appendTo 选项的位置,当我将 appendTo 选项写入控制台时,它会打印正确的 id,但结果并未附加到那里。为什么自动完成的结果被附加到错误的地方?
JS
$(document).ready(function ()
{
$('#nameAutoComplete').autocomplete(
{
source: ['one', 'two', 'three', 'four', 'five', 'six', 'seven'],
appendTo: '#catcher'
});
//prints #catcher to the console
console.log($('#nameAutoComplete').autocomplete('option', 'appendTo'));
});
HTML
<form id="form1" runat="server">
<div>
<input name="nameAutoComplete" type="text" id="nameAutoComplete" />
//results should be appended here
<div id="catcher"></div>
</div>
</form>
CSS
#catcher
{
border: 3px dashed #ccc;
width:250px;
min-height:500px;
float:right;
}
【问题讨论】:
-
确保 ID 在整个页面中是唯一的。
-
他们是。目前页面上没有其他内容。
-
它实际上正在正常工作。如果您在使用自动完成功能时检查 catcher 元素,您会看到附加到它的列表。您的 CSS 样式让您产生了不同的想法。
-
@MelanciaUK 这很奇怪。如果用户需要从带有自动完成标签的文本框中查看页面另一侧的自动完成结果怎么办?此外,您如何在搜索处于活动状态时检查结果的 HTML
标签: javascript jquery jquery-ui