我正在使用以下代碼來動態創建一個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