Asp .net Linkbutton子控件在回发时消失

时间:2013-06-18 14:10:56

标签: c# asp.net

我有一个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>

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

在加载时,我在linkbutton或它的子项上执行以下代码:

                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;

1 个答案:

答案 0 :(得分:1)

猜猜......

我相信您可能会在Page_Load

中的Init(或if(!IsPostBack))中找到代码

如果是这种情况,请将其移至此if语句之外,因为您需要将其作为visible的默认liveChatCtrl运行false

要么重新编码,要么重新编码,以使您的默认visible成立,并且对回发进行检查以在需要时隐藏它。