Nas*_*aer 9 html javascript asp.net
创建Item时,转发器将触发事件
Protected Sub Repeater1_ItemCreated(sender As Object, e As RepeaterItemEventArgs) Handles Repeater1.ItemCreated
Run Code Online (Sandbox Code Playgroud)
并且可以捕获和修改此单个数据行上的控件.
Dim lnk As HyperLink = CType(e.Item.FindControl("lblShipmentDetails"), HyperLink)
Run Code Online (Sandbox Code Playgroud)
现在的问题是,对于任何JavaScript,都需要确定正确的客户端ID.但是控件不包含客户端ID,只包含lblShipmentDetailsString.
MSDN说的是什么:
https://msdn.microsoft.com/en-us/library/system.web.ui.control.clientidmode%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/1d04y8ss%28v=vs.140%29.aspx
或CodeProject:
http://www.codeproject.com/Articles/108887/Client-Ids-Generation-with-ASP-NET
但是如何从Repeater中捕获正确的ClientID以在JavaScript中使用它?

使用DataBound事件。中继器要获取控件ID,首先需要绑定数据。然后按照Created活动要求提供身份证即可。
Protected Sub Repeater1_ItemDataBound(sender As Object, e As RepeaterItemEventArgs) Handles Repeater1.ItemDataBound
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
Dim btn As Button = CType(e.Item.FindControl("btnOrderTrackingConfirmMove"), Button)
If btn IsNot Nothing Then
Dim RealId As String = btn.Page.ClientScript.GetPostBackEventReference(btn, String.Empty).ToString
End If
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
856 次 |
| 最近记录: |