我正在使用以下代码来动态创建一个INPUT元素并为其分配自动完成功能。 .autocomplete行有一些问题,因为将元素添加到td的下一行永远不会执行。jQuery UI自动完成不显示建议
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
var fileCodeAutoComplete = $("<input/>");
$(fileCodeAutoComplete).autocomplete({
source: availableTags
});
$(td).append(fileCodeAutoComplete);
任何想法?
更新1:
我放在一个try-catch周围的自动完成呼叫,并发现该错误是:
“对象不支持此属性或方法”。
这很奇怪,因为我在页面中添加了jquery-ui引用。
更新2:
我更新的代码如下并且仍然收到“对象不支持此属性或方法”。
var fileCodeAutoComplete = $("<input/>");
$(fileCodeAutoComplete).attr("id", "fileCodeAutoComplete");
try {
$("input#fileCodeAutoComplete").autocomplete({
source: availableTags
});
}
catch(ex) {
alert(ex.message);
}
$(td).append(fileCodeAutoComplete);
更新3:我做了一个新的项目和复制粘贴的代码和它的工作,但是,从现有的项目它似乎并不奏效。我认为这可能是微软图书馆正在采取的方式。
UPDATE 4:SOLUTION
的问题是,别人指的是jQuery的一个旧版本这是与jQuery UI的框架搞乱。
(fileCodeAutoComplete).autocomplete()',它的工作原理:您也可以连接输入和自动完成的创作? –
它确实将文本框添加到td,但没有任何自动完成功能。 – azamsharp
它是否将自动完成行为附加到任何输入?我希望你需要遍历你的输入来将行为附加到多个行为上(例如使用.each) – kinakuta