使用javascript的Ajax AutoCompleteExtender

时间:2012-12-11 10:46:34

标签: javascript asp.net ajax asp.net-ajax autocompleteextender

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

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

此方法适用于一个behaviorID,但是当我尝试使用相同的函数时,n在方法中传递AutoCompleteExtender ID,以便只有1个方法用于所有AutoCompleteExtenders,则不会发生任何事情。 我试图将ID作为参数传递,但没有奏效。可能是我错过了什么。

提前致谢。

2 个答案:

答案 0 :(得分:1)

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

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

这是正确的;确保你正在传递ID:

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

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

答案 1 :(得分:1)

我的问题使用以下代码解决

//In the AutoCompleteExtender 
OnClientPopulated="onListPopulated"


//and javascript 
 function onListPopulated(sender, e) {
     var completionList = sender.get_completionList();
      completionList.style.width = 'auto';
 }