0

我有一个这样声明的 asp .net 超链接控件:

  <li runat="server" id="liveChatCtrl" Visible="false"><asp:LinkButton runat="server" ID="hlnkLiveChat" CausesValidation="false" OnClick="hlnkLiveChat_Click">Live Chat Support <i class="icon icon_next_03 fr"></i><i runat="server" id="iconChat" class="icon_chat_online"></i></asp:LinkButton></li>

我的问题是链接按钮的内容在回发时消失了。任何想法为什么会发生这种情况?

在加载时,我在链接按钮或其子按钮上执行以下代码:

                string absoluteURL = UtilManager.Settings.Item(Utils.BrandID, "URL:absoluteURL");
            string chatLink = "StartChat.aspx";
            if (HttpContext.Current.User.Identity.IsAuthenticated)
                chatLink = "LiveChat.aspx";//~/
            //else
            //    chatLink = "SalesChat.aspx";
            string link = absoluteURL + chatLink;
            hlnkLiveChat.Attributes["onclick"] = string.Format("javascript:window.open( '{0}', 'chat', 'status=no,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,height=505,width=420,left=30,top=30');", link);//"openPopup('" + link + "','chat'); return false;";            
            liveChatCtrl.Visible = true;
4

1 回答 1

1

一个推测...

我相信您的Page_Load(或Init)中可能有代码if(!IsPostBack)

如果是这种情况,请将其移出此if语句,因为您需要它作为您的默认visibleliveChatCtrl运行false

要么重新编码,要么重新编码,以便您的默认设置visible为真,并且您在回发时运行检查以在需要时将其隐藏。

于 2013-06-18T14:15:52.683 回答