我在尝试实现YUI自动补全textbox时遇到了麻烦。代码如下:
<div id="myAutoComplete">
<input id="myInput" type="text" />
<div id="myContainer"></div>
</div>
<script type="text/javascript">
YAHOO.example.BasicRemote = function() {
oDS = new YAHOO.util.XHRDataSource("../User/Home2.aspx");
// Set the responseType
oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
// Define the schema of the delimited results
oDS.responseSchema = {
recordDelim: "\n",
fieldDelim: "\t"
};
// Enable caching
oDS.maxCacheEntries = 5;
// Instantiate the AutoComplete
var oAC = new YAHOO.widget.AutoComplete("myInput", "myContainer", oDS);
oDS.generateRequest = function(sQuery) {
return "../User/Home2.aspx?method=" + "SA&Id="+document.getElementById("lbAttributes")[document.getElementById("lbAttributes").selectedIndex].value +"&query="+sQuery;
};
oAC.queryQuestionMark =false;
oAC.allowBrowserAutoComplete=false;
return {
oDS: oDS,
oAC: oAC
};
}
</script>我已经添加了所有yahoo javascript引用和样式表,但当我更改myInput框中的文本时,它似乎从未调用ajax,也没有显示任何内容……我想我错过了一些小精灵..。
发布于 2008-12-10 15:42:34
老实说,我知道这不是最有帮助的答案...这些天你应该考虑使用jQuery,因为它在易用性、语法和社区追随性方面完全让YUI出类拔萃。
然后你可以在http://plugins.jquery.com上找到一大堆很酷的自动补全插件,里面有示例代码等等。
希望这能有所帮助。
发布于 2008-12-10 18:04:28
@Kriss --你能发布一个链接到你遇到问题的页面吗?如果不查看服务器返回的内容和页面的整个上下文,就很难调试XHR自动完成。
@Adam -- jQuery确实很棒,但YUI的小部件都统一地有良好的文档和统一的许可。这是当今令人信服的差异化来源。
https://stackoverflow.com/questions/356348
复制相似问题