2012-12-11 37 views
1

我必須在Web表單中多次使用Ajax AutoCompleteExtender,其中我試圖根據其內容寬度設置AutoCompleteExtender列表的寬度。Ajax AutoCompleteExtender用javascript

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

這種方法正常工作與一個behaviorID但是當我嘗試使用相同的函數N傳遞AutoCompleteExtender ID的方法,以便用於所有AutoCompleteExtenders只有1個方法,那麼什麼也沒有發生。 我試圖傳遞ID作爲參數,但沒有奏效。可能是我錯過了一些東西。

在此先感謝。

回答

1

我的問題是使用下面的代碼

//In the AutoCompleteExtender 
OnClientPopulated="onListPopulated" 


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

如果你正在構建這樣的方法:

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

這是正確的;請確保您傳遞的ID如下:

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

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

相關問題