这是合约。我有几个元素,我可能想要或不想在用户界面上显示由数据库中的表控制。因此,基于我存储的值,我想要向用户显示控件。为了解决这个问题,我将我正在使用的所有控件放在页面上,并将它们放在面板中,每个控件都有一个唯一的ID,以便在后面的代码中通过panelname.visible = true / false来解决它们。
在为此构建后面的代码之前,我通过在asp.net页面上向面板添加属性来测试效果,我对结果很满意。
我测试了一个代码背后,它工作得很好!所以我建立了其余的并尝试了它,然后突然它没有工作!
如果你在这里看到错误,这就是我告诉我的事情!我感到困惑,面板应该隐藏,但是DB的参考bool不是假的。
ASP.NET代码:
<asp:Panel runat="server" ID="Sys1pnl" >
<asp:CheckBox runat="server" ID="SysChkBX1" Value="AIX 6.1" Text=" AIX 6.1" BackColor="DeepSkyBlue" Font-Size="X-Small" />
<br />
</asp:Panel>
守则背后的守则:
if (ElementsVal.AIX_6_1 == true)
Sys1pnl.Visible = true;
else
Sys1pnl.Visible = false;
在所有情况下,面板和内容仍然可见,即使它们应该被隐藏(不可见)。
任何想法都将不胜感激。 肯...
答案 0 :(得分:0)
您是否打算实际检查CheckBox
内存储的值?
如果是这种情况,那么您可以使用Value
属性并查看它是否符合您的条件,然后相应地隐藏:
// This will show / hide your panel based on if the value of your Checkbox is "AIX 6.1"
Sys1pnl.Visible = (SysChkBX1.Value == "AIX 6.1");
答案 1 :(得分:0)
好吧,因为它在添加其他逻辑之前工作,这意味着您共享的代码没有任何问题。 我建议您恢复最新的更改并逐个添加功能,以查看导致问题的原因。
另一个想法是检查页面的Javascript调试器,从浏览器检查页面。如果html出错,则会显示错误。