【问题标题】:CheckBoxList not passing values when not VisibleCheckBoxList 在不可见时不传递值
【发布时间】:2015-11-19 11:41:34
【问题描述】:

我在 asp.net 中有以下 CheckBoxList

<asp:CheckBoxList ID="cat_comp" runat="server" DataSourceID="cats_point_calc" 
DataTextField="cats_points" DataValueField="cats_points" Visible="false"></asp:CheckBoxList>

以及以下 C# 自动选择 OnClick 方法上的所有复选框;

foreach (ListItem li in cat_comp.Items)
        {
            li.Selected = true;
        }

        int catselected = 0;

        for (int i = 0; i < cat_comp.Items.Count; i++)
        {
            if (cat_comp.Items[i].Selected)
            {
                string catval = cat_comp.Items[i].Value;
                catselected += int.Parse(catval);
            }
        }

当我将 cat_comp Visible 设置为 true 时,此代码工作正常,是否有一种方法可以在用户无法查看此 CheckBoxList 的情况下传递这些值?

【问题讨论】:

    标签: c# asp.net webforms


    【解决方案1】:

    每当您设置 ASP.NET 服务器控件的 Visible 属性时,该特定控件都不会呈现,因此您将无法计算该值。

    您可以改为设置display:none 样式(或添加一个类),以便隐藏控件,但您可以进行计算,如下所示:-

    <asp:CheckBoxList ID="cat_comp" runat="server" CssClass="DisplayNone"
    
    <style>
      .DisplayNone { display: none; }
    </style>
    

    【讨论】:

    • 完美。谢谢你。这很有意义。
    猜你喜欢
    • 1970-01-01
    • 2014-06-14
    • 1970-01-01
    • 2013-07-07
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-05
    相关资源
    最近更新 更多