2011-01-21 68 views
0

我的javascript函數接受一個動態變化的參數。我想使用服務器控件來獲取它的動態生成的ClientID。動態分配對象的GetElementID

function myfun(btn){ 

    var id=btn.name+"1"; 
    document.getElementByID('<%"+id+".ClientID%>') --something like this 

}

+0

這是一個asp.net的問題嗎? – 2011-01-21 06:23:51

回答

0

這是行不通的,因爲你要mixure與客戶端代碼服務端......所以,你必須使用

document.getElementByID('<%btnId.ClientID%>') 

document.getElementByID('btnId') 

但是既然你提到你想找到服務器控件(asp.net按鈕?),你應該使用第一個。

0

你將不得不添加的東西到你的服務器端代碼是這樣的:Page.ClientScript.RegisterStartupScript(typeof(Page), Page, "var myControlsID=" + btnId.ClientID, true);

雖然它是合法的,有那些<%=%>內嵌在網頁中我發現它會導致一些問題的情況下。如果可以的話,避免它。