0

クリックイベントが機能しないように、要求が送信されたときにバインド解除を呼び出す必要があるときに、asp.net ajax BeginrequestHandler および EndRequestHandler イベントで $(document).click イベントをバインドしようとしています。endRequestHandler が呼び出されたら、バインドを再度実行する必要があります。

function BeginRequestHandler(sender, args)
     {
       $(document).unbind("click");
       $("#divUtility > :first-child").css({
        'position':'absolute', 
        'left':'0px', 
        'right':'0px', 
        'width':'250px', 
        'height':'70px', 
        'background-color':'#EfEfEF'
       });
     }


   function EndRequestHandler(sender, args)
   {
      $(document).bind("click",function(e){
       if($(e.target).hasClass("UtilityClass"))
       { 
       }
       else
       {
         $('.popupstyle').hide();
       }
      });
   }

残りは正常に動作していますが、バインド解除は機能していません。

4

1 に答える 1

0

最初に行う作業は、いくつかを配置することです

console.debug("your message")

あなたの機能で

function BeginRequestHandler(sender, args)

コールバックが実際に呼び出されたかどうかを確認するため。

次に、クリック イベントですべてのイベント ハンドラーを削除しないようにするために、クリックで名前空間を使用する必要があります (自分のものでなくても)。イベントハンドラーを追加します

$(document).bind("click.myNameSpace", function(mouseEvent) {
    // your code here
});

イベントハンドラーを削除します

$(document).unbind("click.myNameSpace");
于 2012-12-05T01:17:29.257 に答える