usercontrol исчезает при использовании панели обновления - PullRequest
0 голосов
/ 03 марта 2011

У меня есть пользовательский элемент управления, который играет роль нижнего колонтитула для моего сайта и использует java-скрипт jqdock.js для отображения нижнего меню типа яблока.Я добавил панель обновления в usercontrol.Проблема, с которой я сейчас сталкиваюсь, изначально нормально работает, но как только я нажимаю кнопку почты, которая находится в пользовательском контроле, весь пользовательский элемент управления исчезает, после обратной передачи, я думаю.ниже пользовательский контроль и представление кода:

enter code here

public void Page_Load (отправитель объекта, EventArgs e) {

   // Page.ClientScript.RegisterClientScriptInclude("bottomMenu", "../js/jqDock.js");
    ScriptManager.RegisterClientScriptInclude(this,this.GetType(),"bottomMenu", "../js/jqDock.js");
    //ScriptManager.RegisterStartupScript(this, this.GetType(), "bottomMenu", "../js/jqDock.js",true);
   }

// представление дизайна

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ucBottomMenu.ascx.cs"
Inherits="uc_ucBottomMenu" %>
<div id="dockWrapper" style="position: fixed; background: url('user/use.png');
padding: 10px; margin: 0 auto; width: 700px; height: 100px;" class="noprint">

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="dock">

  <asp:PlaceHolder ID="phEmail" runat="server"><a id="hplEmail" runat="server">
        <src="/dock/email.png" title="Email" alt="Email" /></a> </asp:PlaceHolder>



         </asp:PlaceHolder>


</div>
</ContentTemplate>
</asp:UpdatePanel>

1 Ответ

0 голосов
/ 03 марта 2011

Вам нужно зарегистрировать скрипт запуска в своем коде, чтобы вызвать функцию для повторной инициализации вашего jqDock.Это происходит из-за того, что после обратной передачи UpdatePanel все внутри <ContentTemplate></ContentTemplate> заменяется.

Код сзади:

ScriptManager.RegisterStartupScript(this, GetType(), reInitjqDock, "reInitjqDock();", true);

Сценарий:

//example
function reInitjqDock()
{
  jQuery('#dock').jqDock();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...