【问题标题】:Ajax AutoCompleteExtender 's with javascript带有 javascript 的 Ajax AutoCompleteExtender
【发布时间】:2012-12-11 10:46:34
【问题描述】:
我必须在 Web 表单中多次使用 Ajax AutoCompleteExtender,我试图根据其内容宽度设置 AutoCompleteExtender 列表的宽度。
function onListPopulated() {
var completionList = $find("AutoCompleteEx").get_completionList();
completionList.style.width = 'auto';
}
此方法适用于一个 behaviorID,但是当我尝试使用相同的函数 n 在方法中传递 AutoCompleteExtender ID 以便所有 AutoCompleteExtenders 仅使用 1 个方法时,什么都没有发生。
我试图将 ID 作为参数传递,但没有奏效。可能是我错过了什么。
提前致谢。
【问题讨论】:
标签:
javascript
asp.net
ajax
asp.net-ajax
autocompleteextender
【解决方案1】:
如果您正在构建这样的方法:
function onListPopulated(id) {
var completionList = $find(id).get_completionList();
completionList.style.width = 'auto';
}
这是正确的;确保您按如下方式传递 ID:
onListPopulated("<%= AutoCompleteEx.ClientID %>");
使用 ClientID 可确保使用正确的 ID。
【解决方案2】:
我的问题用下面的代码解决了
//In the AutoCompleteExtender
OnClientPopulated="onListPopulated"
//and javascript
function onListPopulated(sender, e) {
var completionList = sender.get_completionList();
completionList.style.width = 'auto';
}