【问题标题】:How do I get all value in Datalist with one button in asp.net/vb.net如何通过 asp.net/vb.net 中的一键获取 Datalist 中的所有值
【发布时间】:2009-10-13 14:41:18
【问题描述】:

我在获取 datalist 中的所有值时遇到问题

问题来了:

我有从数据库中的表动态填充的datalist,aspx页面是批量订单页面,所以datalist中有很多项目,我希望用户能够在中一次选择多个订单 模式并在 中选择一个称为检出的按钮,问题是如何循环遍历所有复选框和文本框并获取值。任何想法编码都会有帮助,因为我还没有编码。

这是我的 aspx 页面:

 <asp:DataList ID="DataList1" runat="server" BackColor="White" BorderColor="#CCCCCC" 
        BorderStyle="None" BorderWidth="1px" CellPadding="3" DataKeyField="Id" 
        DataSourceID="SqlDataSource1" GridLines="Both">
    <FooterStyle BackColor="White" ForeColor="#000066" />
    <ItemStyle ForeColor="#000066" />
    <SelectedItemStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
    <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
    <FooterTemplate>
        <asp:Button ID="btnNext" runat="server" Text="CheckOut" 
            onclick="btnNext_Click" />
    </FooterTemplate>
    <ItemTemplate>
        <asp:Label ID="TitleLabel" runat="server" Text='<%# Eval("Title") %>' />
        <br />
        <asp:Image ID="Image1" ImageUrl='<%# Eval("PictureUrlMedium") %>' runat="server" />

        <br />
         <asp:Label ID="DescriptionLabel" runat="server" 
            Text='<%# Eval("Description") %>' />
        <br />
        <br />
        <asp:Table ID="Table1" runat="server">
        <asp:TableRow>
        <asp:TableCell><asp:CheckBox ID="chkSmall" runat="server" Enabled="true" Width="20px"/>


中等


超大

2XL大

3XL大

4XL大

5X大


    </ItemTemplate>
</asp:DataList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
  ConnectionString="<%$ ConnectionStrings:LocalSqlServer %>"  

    SelectCommand="SELECT [Id], [Title], [Description], [Price], [CategoryId], [PictureUrlSmall], [PictureUrlMedium], [PictureUrlLarge], [Deleted] FROM [Product]"></asp:SqlDataSource>

【问题讨论】:

    标签: asp.net vb.net datalist datalistitem


    【解决方案1】:

    您可以通过循环点击事件中的数据列表项来实现此目的:

    foreach(DataListItem item in YourDataList.Items){
        CheckBox chkSmall = (CheckBox)item.FindControl("chkSmall");
        chkSmall.Checked gives you the value
    }
    

    【讨论】:

      【解决方案2】:

      在回发时,循环遍历数据列表的项目并使用 FindControl 获取复选框状态。您可能希望在 datalist 项中添加一些内容,以识别对应于复选框的实际实体。

      【讨论】:

      • 是的,使用 k0ni 的代码示例找到复选框。但是您可能不知道复选框对应于哪个实体。这是你需要做的事情。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-01
      • 2016-08-21
      • 2020-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多