2012-07-03 2 views
0

Я делаю async postback используя updatepanel. после того, как кнопка async postback нажала два раза. Я не знаю, почему я использую jQuery для подключения некоторых эффектов mouseover к элементам, находящимся внутри UpdatePanel. События связаны в $ (документ) .readybtn клик два раза после async postback

<script type="text/javascript"> 
     window.onload = body_load; 
     function body_load() 
     { 
      BindEvents(); 
     } 
     function BindEvents() 
     { 
      $(function() 


{$(".csstablelisttd").mousedown(function (e) 
       {//mouse down code}); 
        $("#contentPlaceHolderMain_btnFix").click(function (e) 
        {alert("Alert");//here alert is generate two times an then postback occurs 
         //btn click code 
        } 
       } 
      } 
     </script> 

<asp:UpdatePanel ID="updatePanelTableAppointment" runat="server"> 
         <ContentTemplate> 
    <table id="table" runat="server"> 
     //table data 
     </table> 

<script type="text/javascript">Sys.Application.add_init(body_load); 
</script> 
        </ContentTemplate><Triggers> 
         <asp:AsyncPostBackTrigger ControlID="btnFix" EventName="Click" /> 
        </Triggers> 
       </asp:UpdatePanel> 

ответ

1

вы звоните body_load два раза

здесь

window.onload = body_load; 

и здесь

Sys.Application.add_init(body_load); 

, которые вызывают его нажмите два раза

+0

, что я делаю для этого –

0

Вы добавляете события дважды: при загрузке страницы и после обратной передачи. Вам нужно сбросить обработчик, если вы должны изменить обработчик событий

  function BindEvents() 
      { 
       $(function() { 
        $(".csstablelisttd").unbind('mousedown'); 
        $("#contentPlaceHolderMain_btnFix").unbind('click'); 

        $(".csstablelisttd").mousedown(function (e) 
         {//mouse down code});          
        $("#contentPlaceHolderMain_btnFix").click(function (e) 
         {alert("Alert"); }); 
       } 
      } 
+0

, когда я использую отвязать («щелчок») мыши код, который выше btnclick случае не работает после asynpostback; –

+0

вам тоже нужно отпереть его. Ответ обновлен – onof

Смежные вопросы