我有一个转发器控件,在ItemDataBound事件中,我希望在转发器控件中获取值,并通过将这些值作为参数传递来重定向到另一个页面。 我写了以下代码
Protected Sub rptData_ItemDataBound(ByVal source As Object, ByVal e As RepeaterItemEventArgs)
Dim content As String = ""
Dim url As String = ""
Dim lbl1 As Label = TryCast(e.Item.FindControl("content"), Label)
Dim lbl2 As Label = TryCast(e.Item.FindControl("url"), Label)
content = lbl1.Text
url = lbl2.Text
Dim btn As LinkButton = CType(e.Item.FindControl("glossary"), LinkButton)
btn.Attributes.Add("onclick", "Response.Redirect('glossary.aspx?cont=' + content + 'url=' + url)return true;")
end su
答案 0 :(得分:0)
只修改下面的代码行,因为只有
的错误您无需respose.redirect
需要重定向,因此您使用javascript location
对象,如下所示
btn.Attributes.Add("onclick", "window.location = 'glossary.aspx?cont=" + content + "&url=" + url + "';")
或
只需设置链接按钮的prostbackurl属性
btn.PostBackUrl= "glossary.aspx?cont=" + content + "&url=" + url ;
答案 1 :(得分:0)
另一种方法是创建一个新的事件处理程序例程,将信息传递给Event Args并将LinkButton btn挂钩到事件处理程序,然后就可以使用Response.Redirect。