由于这篇 Stack Overflow 帖子,我找到了一个很棒的插件,用于使用 Javascript 进行自动完成,称为 AutoSuggest:
用于分隔标签的插件(如 stackoverflow 的输入标签接口)
这是插件作者页面的链接:
http://code.drewwilson.com/entry/autosuggest-jquery-plugin
autoSuggest 插件将用于输入查询的输入框(type="text")的宽度设置为 1000px,比我想要的宽得多。它以某种方式覆盖了文档 HTML 中输入框样式属性中设置的宽度:
<div NAME="divAutoSuggest" ID="divAutoSuggest">
<input type="text" NAME="editQuery2" ID="editQuery2" wrap="soft" style="margin-left:5px;width:600px;" title="Enter your search query here using plain English"></input>
</div>
我也尝试在输入框定义中使用cols属性,但这也被忽略了。我发现另一个 Stack Overflow 帖子谈到在打开事件期间拦截宽度设置,但该示例是针对自动完成插件而不是 autoSuggest:
我还是使用以下代码尝试了它:
$(document).ready
(
function()
{
// Put jQuery related initialization code that must occur after the document is ready here.
$("input[type=text]").autoSuggest
(
data.items,
{
selectedItemProp: "name",
searchObjProps: "name",
startText: "Enter Evernote tags here...",
open: function(event, ui)
{
$(this).autoSuggest("widget").css
(
{
"width": 600
}
);
}
} // data. items
); // $("input[type=text]").autoSuggest
} // function()
); // $(document).ready
但这也不起作用。谁能告诉我如何设置输入框的宽度?注意我不是在谈论带有自动完成条目的下拉框,我指的是您键入触发自动完成下拉框的文本的主要输入区域。