C# 在异步回发后,btn被单击两次

C# 在异步回发后,btn被单击两次,c#,jquery,asp.net,C#,Jquery,Asp.net,我正在使用updatepanel进行异步回发。异步回发按钮点击两次后,我不知道为什么要用jQuery在UpdatePanel中的元素上连接一些鼠标悬停效果。事件以$(document.ready)绑定 <script type="text/javascript"> window.onload = body_load; function body_load() { BindEvents();

我正在使用updatepanel进行异步回发。异步回发按钮点击两次后,我不知道为什么要用jQuery在UpdatePanel中的元素上连接一些鼠标悬停效果。事件以$(document.ready)绑定

    <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>

window.onload=车身载荷;
函数体_加载()
{
BindEvents();
}
函数BindEvents()
{
$(函数()
{$(“.csstablelisttd”).mousedown(函数(e)
{//鼠标按下代码});
$(“#contentPlaceHolderMain_btnFix”)。单击(函数(e)
{alert(“alert”);//此处生成两次警报,然后发生回发
//点击代码
}
}
}
//表数据
Sys.Application.add_init(body_load);

您正在呼叫
body\u load
两次

这里

这里呢

Sys.Application.add_init(body_load);

这会导致它单击两次

您将附加两次事件:加载页面时和回发后。如果必须更改事件处理程序,则需要重置处理程序

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

                  $(".csstablelisttd").mousedown(function (e)
                      {//mouse down code});                                     
                  $("#contentPlaceHolderMain_btnFix").click(function (e)
                      {alert("Alert"); });
                }
            }
当我使用解除绑定(“单击”)鼠标下键代码时,该代码位于btnclick事件之上,在asynpostback之后不起作用;
            function BindEvents()
            {
               $(function () {
                  $(".csstablelisttd").unbind('mousedown');
                  $("#contentPlaceHolderMain_btnFix").unbind('click');

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