【问题标题】:ASP.NET DataList check boxASP.NET 数据列表复选框
【发布时间】:2013-09-22 11:36:00
【问题描述】:

我认为我可能使用了错误的控件,但目前我有一个显示名称的数据列表,然后有 2 个复选框

<asp:DataList ID="DataList1" runat="server" DataKeyField="AlbumID" >
    <ItemTemplate>
        Name:
        <asp:Label ID="DescriptionLabel" runat="server" Text='<%# Eval("aName") %>' />
        <br />   
        CD:
        <asp:CheckBox ID="OnCD" runat="server" Text='<%# Eval("AlbumID") %>' />
        <br />
        MP3:
        <asp:CheckBox ID="OnMP3" runat="server" Text='<%# Eval("AlbumID") %>' />
        <br />
        <br />
        <br />
    </ItemTemplate>
</asp:DataList>

当按下按钮时,我会遍历所有选中的“OnCD”和“OnMP3”并更新数据库,使用复选框文本 (AlbumID) 来识别正确的行。

我唯一真正的问题是文本 (AlbumID) 显示为标签。由于我找不到一种简单的方法来隐藏它,我现在假设我没有在某处使用正确的控件。

有没有办法隐藏文本,我是否应该使用除DataListCheckbox 之外的控件?

【问题讨论】:

  • 您是在客户端还是服务器端脚本中尝试这样做?
  • 服务器端c#,我已经搞定了,我只需要隐藏生成的标签...

标签: c# asp.net checkbox datalist


【解决方案1】:

在复选框中添加一个 css 类:

<asp:DataList ID="DataList1" runat="server" DataKeyField="AlbumID" >
    <ItemTemplate>
        Name:
        <asp:Label ID="DescriptionLabel" runat="server" Text='<%# Eval("aName") %>' />
        <br />   
        CD:
        <asp:CheckBox ID="OnCD" CssClass="hidden" runat="server" Text='<%# Eval("AlbumID") %>' />
        <br />
        MP3:
        <asp:CheckBox ID="OnMP3" CssClass="hidden" runat="server" Text='<%# Eval("AlbumID") %>' />
        <br />
        <br />
        <br />
    </ItemTemplate>
</asp:DataList>

还有风格:

<style>        
    .hidden label
    {
        display:none;
    }
</style>

【讨论】:

  • 感谢您的想法,我真的希望听到更好的方法,即使用不同的服务器控件。但如果没有其他问题,我会使用它。
  • 您始终可以在 itemtemplate 中使用隐藏控件 - 但我认为在这种情况下这并不是更好。
猜你喜欢
  • 2012-02-26
  • 1970-01-01
  • 2013-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-26
  • 1970-01-01
相关资源
最近更新 更多