2012-03-12 167 views
0

这里是aspx页面代码:隐藏格在vb.net代码

<div id = "1"> 
<div id ="a"> 
</div> 
<div id ="b"> 
</div> 
</div> 

我想隐藏ID为 'B' 的div。这可以在代码中完成吗? 因为我知道我可以通过1.visible = false命令隐藏整个div,但我想要'a'可见只是想隐藏'b'。

+0

“据我所知,我可以通过'1.visible = false'来隐藏整个div。”你尝试过'b.visible = false'吗?不要忘记'runat =“server”'。 – Stefan 2012-03-13 09:59:52

回答

0

您可以将runat =“server”添加到div b,并在代码中将其分配给“display:none;” CSS值。

<div id = "1"> 
<div id ="a"> 
</div> 
<div id ="b" runat="server"> 
</div> 
</div> 

然后在代码隐藏

b.Style("Display") = "none" 
+0

添加runat = server有问题吗?这可以做到这一点吗? – NoviceMe 2012-03-12 19:42:45

+0

如果你想从代码隐藏中做到这一点,你必须添加runat =“server”。否则你可以从客户端使用Javascript来完成。据我所知,将runat =“server”添加到div是没有问题的。 – Sashenka 2012-03-12 19:44:34

+0

我加入runat =“server”后仍然无法访问b – NoviceMe 2012-03-12 20:21:35

0

如果你可以使用jQuery很简单:

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $('#b').css('display','none'); 
    }); 
</script> 

在这里看到活生生的例子:http://jsfiddle.net/jQ4FX/1/

你可以这样使用一个按钮点击我认为你会想要的。这个例子只是隐藏页面加载的div。

正如Sashenka所说,runat = server可以被使用,并且不会有任何不好的影响,它只会让你控制它在服务器端,即在你的代码隐藏。使用CSS或者只是可见=假:

ASPX:

<div runat="server" id="b"></div> 

后台代码:

b.Visible = False 

注:如果您添加RUNAT = “服务器”,但使用jQuery,你将需要更改jQuery以识别id,因为.NET在运行时更改了id:

$("div[id$='b']").css('display','none'); 

“div [id $ ='b']”使jQuery能够找到一个id与'b'匹配的div。

+0

请参阅http://api.jquery.com/hide;) – Stefan 2012-03-13 09:57:35