嵌套<asp:net>文字标记与html <div> vs在<asp:panel> </asp> panel> </asp:net> </div> </asp中嵌套<asp:net>文字:网>

时间:2013-04-01 14:38:46

标签: jquery asp.net html

我有一个现有的代码库,在开发人员选择通过asp.net面板标签包围asp.net文字标记的代码的某些部分。但是在代码的其他部分,开发人员选择使用html div标签包围asp.net文字标记。在这两种情况下,文字标记都是错误消息显示的占位符。我不确定为什么会选择另一个。

以下是示例:

<div class="shadowContent">
                                    <div class="errorLabel" id="divErrorMsg" style="display:none">
                                    <asp:Literal runat="server" ID="litError12" Text="Enter required fields." />
                                </div>

VS

                         <asp:panel runat="server" class="errorLabel" ID="pnlError1" Visible="false">
                            <asp:Literal runat="server" ID="literal1" />
                         </asp:panel>

3 个答案:

答案 0 :(得分:0)

如果我必须在服务器端修改div,我会使用asp.net面板,否则我只选择一个好的ol div

答案 1 :(得分:0)

渲染的HTML有区别吗?最终,Panel只会向客户端呈现div。如果不需要在服务器端上下文中引用div,那么使用普通div可能会导致性能稍微提高,因此开发人员可能会尽可能地选择。{/ p >

但是,如果需要在服务器端代码中引用div(可能使其可见或不可见),而不是Panel允许这样做。就像服务器端div控件一样:

<div runat="server" ID="pnlError1">

这些选项之间没有什么区别,只是在代码中更容易维护和更有意义的问题。

答案 2 :(得分:0)

如果您使用Panel并将其Visible属性设置为false,则根本不会呈现<div>元素。相反,如果您使用<div>并设置style="display:none",则会有一个隐藏的<div>元素,您可以通过客户端JavaScript显示该元素。