回答
什麼ASP.NET一般不會是你的前綴控件的ID與一個字符串,它用於確定您的實際控件駐留在ASP.NET控件樹中的哪個位置。
考慮到這一點,我通常所做的就是使用jQuery的'ends with'選擇器在運行時獲取完整的ASP.NET解析ID。
喜歡的東西:
// get a handle on your original control
var myControl = $('[id$="<myOriginalId>"]');
// and then access it's properties
var myRuntimeId = myControl.eq(0).attr('id');
你可以很可能想像,這不會削減它,當你有用戶控件與形式的不同的地方使用相同的ID。我只是在這裏和那裏進行一些調整(可能使用.eq()
函數)以適合我的業務需求。
你可以把在用戶控件類,然後用類似$( 「myUC 」)。ATTR(「 ID」)
我也這樣做,當我必須。然而,我覺得我應該注意,元素類在語義上被設計用於DOM中的多個元素,所以像這樣的東西一般可以返回多個元素。那麼,無論是或者你使用類名作爲ID。 – 2011-03-22 09:33:01
我同意此路線需要應用一定程度的控制權。 – RubbleFord 2011-03-22 09:34:26
這可能有助於您從不同的角度來看待它: 在.Net中,您可以使用myControl.ClientID
獲取生成的ID。
如果你把它放在一個javascript變量中 - 我知道它並不整齊 - 你可以很容易地獲取它。
<!--mypage.aspx-->
<script>
var myIdVar = "<%=myControl.ClientID%>";
if(myIdVar == "foo")
{
alert("bar");
}
</script>
- 1. 獲取在用戶控件中的控件在javascript中的客戶端ID
- 2. 在運行時獲取控件數組中的用戶控件的索引
- 3. 如何獲取其他用戶控件ID內的用戶控件ID?
- 4. 獲取用戶控件的ID gridview
- 5. 在運行時創建用戶控件
- 6. 用戶控件在運行時調整
- 7. Web用戶控件獲取父控件ID?
- 8. 在運行時添加用戶控件 - 訪問控件
- 9. 在asp.net中獲取用戶控件html
- 10. 從控制獲取父用戶控件
- 11. 在C#中獲取用戶控件的子控件名稱
- 12. 使用javascript獲取用戶控件中的控件值
- 13. 獲取EventClicked從用戶控件在ASPX
- 14. 用戶控件與用戶控件
- 15. MVVM +用戶控件+用戶控件+ DependencyProperty
- 16. 從ASP.Net登錄控件LoggedIn事件獲取用戶ID
- 17. ASP.Net用戶控件在運行時添加時不起作用
- 18. 在gridview中的用戶控件中找到控件的客戶端ID
- 19. 用戶控件在運行時在asp.net中不可見
- 20. SignalR從控制器獲取用戶ID
- 21. 運行用戶控件的代碼
- 22. 在用戶控件
- 23. 在用戶控件
- 24. 在用戶控件
- 25. 在用戶控件
- 26. 在另一個用戶控件中移動用戶控件
- 27. 如何在wpf用戶控件中託管WinForms用戶控件?
- 28. 在asp.net中嵌套用戶控件通信的用戶控件
- 29. 項目Id在用戶控件
- 30. ASP.NET:在其他用戶控件中引用用戶控件時出現問題?
謝謝,這完全符合我的情況,只需稍加修改:) – mehul9595 2011-03-22 10:30:59