【问题标题】:Can drop-down-lists control check boxes in a checkboxlist?下拉列表可以控制复选框列表中的复选框吗?
【发布时间】:2016-05-10 01:24:21
【问题描述】:

下拉列表可以选中或取消选中使用 ObjectDatasource 填充的复选框。下拉列表中的值代表设备,复选框代表这些设备的设置。两者都存储在数据库中的一个表中。有没有可能做到这一点。如果有的话,这种方法背后的逻辑是什么。我在网上查过,但没有发现类似这个问题。已经有 3 天没有运气了。我已经存储了 EquipDDL.SelectedValue 在列表中。 但我很难绑定这个列表的数据和复选框列表。

string UserDDL = AllEquipDDL.SelectedValue.ToString()
string query = "Select settingName from EquipSettings where EquipName=" + UserDDL;
cmd.Connection = conn;
cmd.CommandText = query;

SqlDataReader dr = cmd.ExecuteReader();

while (dr.Read())
{
    string myItem = dr["settingName"].ToString();

    settingSelectCheckBox.Items.Add(myItem);

    for (int i = 0; i <= settingSelectCheckBox.Items.Count; i++)
    // stucked in here...

ASP.NET:

<asp:CheckBoxList runat="server" ID="settingSelectCheckBox" DataSourceID="SettingsObjectDataSource"

<asp:DropDownList ID="AllEquipDDL" runat="server" DataSourceID="AllEquipSqlDataSource"

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:
      string myItem = dr["settingName"].ToString();
      settingSelectCheckBox.Items.Add(myItem);
     IEnumerable<string> CheckedItems = settingSelectCheckBox.Items.Cast<ListItem>()
                                       .Where(i => i.Selected)
                                       .Select(i => i.Value);
    
          foreach(string i in CheckedItems)
          {
            //do somthing
          }
    

    【讨论】:

      【解决方案2】:

      我解决问题的方法是使用 Google chrome 开发工具识别所有复选框和所有 ddl 项的 ID,使用 if 语句和 else 我能够检查和取消选中所需的复选框。

      【讨论】:

        猜你喜欢
        • 2010-10-16
        • 1970-01-01
        • 2022-11-17
        • 1970-01-01
        • 2016-02-20
        • 2013-07-12
        • 2010-12-02
        • 2023-03-23
        • 2020-11-19
        相关资源
        最近更新 更多