【问题标题】:Create a HTML table with an ASP repeater, repeating horizontally使用 ASP 重复器创建 HTML 表,水平重复
【发布时间】:2012-03-10 19:53:46
【问题描述】:

我正在尝试使用 ASP 中继器构建 HTML 表:

<asp:Repeater ID="RepeaterVersionsForPie" runat="server">
    <ItemTemplate>
        <table id="VersionsTable" >

                <tr>
                    <th>
                    <%#Eval("nameVersion")%>
                    </th>

                </tr>

    </ItemTemplate>
    <ItemTemplate>
        <tbody>
            <tr>
                <td tag="<%#Eval("idVersion")%>">
                    <%#Eval("NumberOfCompaniesUsingThisVersion")%>
                </td>
            </tr>
        </tbody>
    </ItemTemplate>
    <FooterTemplate>
        </table>
    </FooterTemplate>
</asp:Repeater>

这是一个基本表格,包含 两行 X 列。 第二行显示没有任何问题,而第一行是不可见的。 任何人都可以帮助找到缺少的东西吗? 提前致谢。

【问题讨论】:

  • 只需将第一个 ItemTemplate 转换为 HeaderTemplate(输入错误?)
  • 我已经尝试过使用 HeaderTemplate 但它也不起作用,我不明白为什么......
  • 将其更改为 HeaderTemplate 并查看浏览器的错误面板(对于 Firefox 为 Ctrl+Shift+J)...

标签: html asp.net html-table repeater


【解决方案1】:

我认为核心问题是Repeater 并非旨在水平重复。

也许你应该尝试使用DataList,它允许指定RepeatingDirection。

更新

如果您不需要水平重复(就像您的问题建议“...两行和 X 列”),您的 Repeater应该看起来像这样

<asp:Repeater ID="RepeaterVersionsForPie" runat="server">

    <HeaderTemplate>
        <table id="VersionsTable">
    </HeaderTemplate>

    <ItemTemplate>
        <tr>
            <th><%# Eval("nameVersion") %></th>
            <!-- Important: Put attributes in single quotes so they don't get
                 mixed up with your #Eval("xxx") double quotes! -->
            <td tag='<%#Eval("idVersion")%>'>
                <%# Eval("DocumentName") %>
            </td>
        </tr>
    </ItemTemplate>

    <FooterTemplate>
        </table>
    </FooterTemplate>
</asp:Repeater>

请注意,您不得在&lt;ItemTemplate&gt; 中重复&lt;table&gt;,并在需要将Eval 放入属性时使用单引号。

【讨论】:

  • 谢谢,但无论如何这不是一个严重的问题,因为表格是垂直构建的。怎么没用?
猜你喜欢
  • 1970-01-01
  • 2019-05-21
  • 2011-01-03
  • 1970-01-01
  • 1970-01-01
  • 2018-06-03
  • 2011-07-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多