1

我必须在 Web 表单中多次使用 Ajax AutoCompleteExtender,我试图根据其内容宽度设置 AutoCompleteExtender 列表的宽度。

 function onListPopulated() {
var completionList = $find("AutoCompleteEx").get_completionList();
completionList.style.width = 'auto';
}

此方法适用于一个 behaviorID,但是当我尝试使用相同的函数 n 在方法中传递 AutoCompleteExtender ID 以便所有 AutoCompleteExtenders 仅使用一种方法时,什么都没有发生。我试图将 ID 作为参数传递,但没有奏效。可能是我错过了一些东西。

提前致谢。

4

2 回答 2

1

如果您正在构建这样的方法:

function onListPopulated(id) {
  var completionList = $find(id).get_completionList();
  completionList.style.width = 'auto';
}

那是对的; 确保您按如下方式传递 ID:

onListPopulated("<%= AutoCompleteEx.ClientID %>");

使用 ClientID 可确保使用正确的 ID。

于 2012-12-11T16:20:59.723 回答
1

我的问题是使用下面的代码解决的

//In the AutoCompleteExtender 
OnClientPopulated="onListPopulated"


//and javascript 
 function onListPopulated(sender, e) {
     var completionList = sender.get_completionList();
      completionList.style.width = 'auto';
 }
于 2012-12-13T10:33:43.870 回答