在aspx页面中,我将table作为容器,tds中有不同的Repeater。
我知道table不是数据绑定控件但是想知道可能有办法使用dt中的数据来控制tr或任何其他html控件的可见性吗?
我刚刚尝试了Page.Databind(),但它没有成功,并且出现错误“表不是数据绑定控件”
请指导。
由于
答案 0 :(得分:2)
您应该使用DISPLAY属性来确保隐藏的行不会留下空白而不是VISIBLE属性。
在不知道或看到你的代码块的情况下,它很难再次猜测,但如果你使用“显示”或“隐藏”作为旋转来决定是否显示或隐藏一行........
也许您的代码应如下所示.....
<tr <%=GetDisplayStatus('switch') %>>
其中switch是“show”或“hide”,你的SERVERSIDE函数获取显示状态应如下所示..
Function GetDisplayStatus(SwitchState as String) as String
If SwitchState = "show" then
return " style=" & chr(34) & "display: block;" & chr(34)
ElseIf SwitchState = "hide" Then
return " style=" & chr(34) & "display: none;" & chr(34)
Else
' no action otherwise
return ""
End If
End Function
如果适合您,请告诉我。
答案 1 :(得分:0)
使用ASP.Net时,了解服务器处理哪些属性以及哪些属性是html非常重要。使用<%#
标记时,表达式中的值将直接写入Web服务器的响应流。此时分配给服务器属性为时已晚。 Visible是服务器属性。