0

我正在尝试验证开发人员在其上使用 gridview 的 ASP.Net 站点上的页面。似乎最初他们使用的是“占位符”网格视图,该网格视图基于单击某些按钮以显示数据而变得隐藏或可见。但是,在单击这些按钮之前,我看到一个空表,并且我正在使用的验证工具抱怨没有 tbody 或 tr 标签。有没有办法完全隐藏表格标签或在隐藏的网格视图中插入 tbody/tr?

这是 aspx.vb 文件中的 gridview 标记:

<asp:GridView ID="GridView1"  runat="server" AutoGenerateColumns="False" summery="This table displays system notification items."
 AllowPaging="True" PagerSettings-Position="Top" PagerStyle-HorizontalAlign ="Right" PageSize ="15"  >
<Columns>
    <asp:TemplateField>
     <ItemTemplate>
      <asp:Image ID="image1" runat="server" ImageUrl="~/cmsicons/flag_red.gif" AlternateText="Overdue" Visible='<%# Eval("IsVisible")%>'/>
     </ItemTemplate>
    </asp:TemplateField>
    <asp:BoundField DataFormatString="{0:MM/dd/yyyy}" DataField="showdate" HeaderText="Due Date" 
        SortExpression="showdate"  />
        <asp:BoundField DataFormatString="{0:MM/dd/yyyy}" DataField="ModifiedDate" HeaderText="ModifiedDate" 
        SortExpression="ModifiedDate"  />
    <asp:TemplateField HeaderText="Data ID" SortExpression="DataRecordID">            
        <ItemTemplate>   
          <asp:HyperLink text='<%# Eval("DataRecordID") %>'  runat="server" NavigateUrl='<%# Eval("DataRecordID", "CMSManageAllDataRecord.aspx?dataid={0}") %>' ></asp:HyperLink> 
        </ItemTemplate> 

        </asp:TemplateField> 

    <asp:BoundField DataField="RecordName" HeaderText="Title" 
        SortExpression="RecordName" />       
    <asp:BoundField DataField="subcdrl" HeaderText="CDRL Number" 
        SortExpression="subcdrl" />        
    <asp:BoundField DataField="subcdrl" HeaderText="Sub Cdrl Count" 
        SortExpression="subcdrl" Visible ="false"  /> 
    <asp:BoundField DataField="StatusName" HeaderText="Status" 
        SortExpression="StatusName" />

</Columns>
<EmptyDataTemplate>
                <div>No Data found</div>
            </EmptyDataTemplate>
 <FooterStyle CssClass="GridViewFooterStyle" />
<RowStyle CssClass="GridViewRowStyle" />    
<SelectedRowStyle CssClass="GridViewSelectedRowStyle" />
<AlternatingRowStyle CssClass ="GridViewAlternatingRowStyle" />
<PagerStyle CssClass="GridViewPagerStyle" HorizontalAlign="Right"    />
<HeaderStyle CssClass="GridViewHeaderStyle" />

</asp:GridView>

这是我查看源代码时看到的输出:

<div class="AspNet-GridView" id="ctl00_ContentPlaceHolder1_GridView1">
          <table cellpadding="0" cellspacing="0" summary="">
          </table>

</div>
4

1 回答 1

1

你绝对可以用Javascript隐藏它,如果这是一个选项,一种方法是

<script>
function hideGV(){
    document.getElementById('<%=GridView1.ClientID%>').style.display='none';
}
</script>

如果您想插入tbody/tr元素并使用 jQuery 是您的一个选项,这里有一个示例。

插入的 jQuery 选项tbody/tr

<script>
​$(function(){
    $('#<%=GridView1.ClientID%>').append('<tbody><tr><td></td></tr></tbody>');
});​
</script>
于 2012-12-12T19:31:46.027 回答