Hitwise跟踪ASP.NET中的ImageButton单击事件

时间:2011-01-05 05:48:22

标签: asp.net jquery postback tracking

我有一个ImageButton设置,在OnInit事件中,我正在设置Click事件

btnJoinNow.Click += new ImageClickEventHandler(btnJoinNow_Click);

在客户端,我设置了一个jQuery点击事件,该事件仅在按下按钮时触发一个命中跟踪事件。我遇到的问题是,似乎按钮事件击败了javascript而没有跟踪。在imagebutton事件触发服务器端之前,我需要暂停1秒。

我已尝试过以下内容,但总是会触发。我也试过了e.preventDefault(),但这只是完全停止回发。

$("input[id$='btnJoinNow']").click(function(e) {
    Spots.HitWise();

    setTimeout(function(){
    }, 5000);
});

编辑:

我能让这个工作的唯一方法就是做以下几点:

$("input[id$='btnJoinNow']").click(function(e) {
    Spots.HitWise();

    setTimeout(function(){
       $("input[id$='btnJoinNow']").unbind('click').bind('click', function(e){});
    }, 1000);

    return false;
});

这样可以让HitWise事件有足够的时间进行跟踪,然后清除click事件并再次自行调用。

1 个答案:

答案 0 :(得分:1)

使用OnClientClick

<asp:ImageButton id="btnTest" runat="server" 
      OnClientClick="javascript:FireHitwise();" .../>

<script type="text/javascript">
function FireHitwise(){
    Spots.Hitwise();
    return true;//returning false will not fire server side handler
}
</script>