【问题标题】:ASP .NET Panels visible true/false working only after double clicking in breakpoint modeASP .NET 面板仅在断点模式下双击后可见真/假工作
【发布时间】:2018-08-03 03:13:01
【问题描述】:

我有一个奇怪的问题。我的页面中有两个面板。单击一个按钮时,一个变为可见,而另一个则隐藏。以下是我的代码。

     <asp:Panel ID="pnlIDProof" runat="server" Visible="true">
     ID Proof Panel markup here......
    </asp:Panel>

    <asp:Panel ID="pnlRegister" runat="server" Visible="false">
     Registration Panel markup here.....
    </asp:Panel>

   protected void btnIDCheck_Click(object sender, EventArgs e)
     {
        if (candidate.IsDuplicateIDProof())
            CallExist();
        else
            CallRegistration();
    }        


       protected void CallRegistration()
        {
            pnlIDProof.Visible = false;
            pnlRegister.Visible = true;
            Session["Candidate"] = candidate;
        }

我的问题是即使上面的代码正在执行,面板切换也没有发生。仅当我在 CallRegistration() 方法附近插入断点并双击我的按钮时才会发生面板切换(请注意,单击它不起作用)。奇怪的是,没有断点,我点击按钮的次数没有发生。不知道可能是什么问题。我正在使用引导程序 4。

【问题讨论】:

  • 我们能看到按钮本身的标记吗?
  • 嗨,这里是
  • 您已经验证了 Candidate.IsDuplicateIDProof() 是否为假?也许它的现有值在会话中保存?
  • 是的,我的数据库现在是空的。 CallRegistration 也被调用,但它仅在我插入断点并双击我的 ID 检查按钮时才有效。
  • 你试过在没有调试器的情况下运行它吗?它适用于我并切换面板。如果我刷新它会留在那个面板上,但那是因为候选人的状态在会话中被保持为假。正如预期的那样。关于两次点击按钮,可能是页面加载中的 PostBack 有问题?

标签: asp.net twitter-bootstrap panels


【解决方案1】:

查了很多,才发现问题所在。我的两个面板都在 UpdatePanel 内,可见 true/false 不起作用,因为页面中有一些 javascript 错误。我正在 Chrome 中调试我的应用程序,当我尝试在 Internet Explorer 中调试时弹出 javascipt 错误。纠正 Javascipt 错误后,页面工作正常。

【讨论】:

    猜你喜欢
    • 2021-08-03
    • 2011-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多