2009-11-05 20 views
-1

我正在使用客戶端的asp.net控件表。當它們在服務器端創建時,它們都按以下方式命名:「txt_name_」+ rowNum。我知道我可以通過使用「<%= Control.ClientID%>」來訪問它們。在客戶端,我可以通過javascript變量訪問當前的行號。我想知道如何通過使用類似於以下內容(似乎不起作用)訪問客戶端上的某個控件:「<%= txt_name_」+ jsRowNumVar +「.ClientID%>」。所以我基本上試圖將一個JavaScript變量替換爲一個asp.net控件名稱的一部分,它似乎並沒有工作。任何想法如何我會做到這一點?在asp.net控件中嵌入javascript變量id

回答

0

作爲替代方案,您可以使用javascript數組呈現行的客戶端ID,並且可以將其與行索引一起使用。

string jsToRender = "<script>var myCtrlIds = new Array('" + 
     text0.ClientId + "', '" + 
     text1.ClientId + "', '" + 
     text2.ClientId + "');</script>"; 
Page.ClientScript.RegisterStartupScript(typeof(MyPage), "jsKey", jsToRender); 

然後使用控件的ID陣列中的客戶端腳本:

<script> 
     var text0Value = document.getElementById(myCtrlIds[0]).value; 
</script> 
+0

不確定你的意思。 – Riz 2009-11-05 20:51:58

1

它不喜歡這個<%...%>的東西是在服務器上的評估,並涉及到客戶合作作爲html。放置JavaScript變量的名稱將不會對你有好處

相關問題