首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mixpanel和asp.net按钮

mixpanel和asp.net按钮
EN

Stack Overflow用户
提问于 2014-08-12 23:17:15
回答 1查看 127关注 0票数 0

我不得不添加一些混合面板跟踪到一个很好的旧asp.net页面,它变成了一个噩梦。我有这个按钮:

代码语言:javascript
复制
<asp:Button ID="idConfirmAndSubmitButton" name="confirmAndSubmitButton" Text="Confirm and Submit" OnClick="SaveAndPublishClick" runat="server" />

在.cs文件上有这样的代码:

代码语言:javascript
复制
idConfirmAndSubmitButton.OnClientClick = "mixpanel.track('track me'); return validateFields()";

只有当validateFields()返回false时,才会在mixpanel上跟踪事件;

我设法非常简单地重现了这个问题:

这将正确跟踪:

代码语言:javascript
复制
idConfirmAndSubmitButton.OnClientClick = "mixpanel.track('track me'); return false";

这不会:

代码语言:javascript
复制
idConfirmAndSubmitButton.OnClientClick = "mixpanel.track('track me'); return true";
EN

回答 1

Stack Overflow用户

发布于 2014-08-14 15:49:27

似乎如果validateFields()返回true,那么表单就会提交,页面就会发生变化,而mixpanel代码就不会被触发。mixpanel支持建议我添加一个小延迟(300ms),以便在提交表单之前给跟踪代码一个触发的机会。这是我在最后结束的代码,它似乎起作用了:

代码语言:javascript
复制
<input type="submit" name="ctl00$phMainBody$idConfirmAndSubmitButton" value="Confirm and Submit"
onclick="if(delayPostback(this,validateFields(['ctl00_phMainBody_idProfileForm']))){ console.log('stopping the postback'); return false;};" 
id="ctl00_phMainBody_idConfirmAndSubmitButton">

<script type="text/javascript">
    var postbackDelayed = false;
    function delayPostback(e, validated) {
        if (postbackDelayed) {
            postbackDelayed = false;
            return !validated;
        } else {
            postbackDelayed = true;
        }
        console.log('tracking');
        mixpanel.track('Minimum Required Fields - confirm and submit clicked');
        window.setTimeout(function () {
            console.log("clicking again");
            e.click();
        }, 300);
          console.log("returning true");
          return true;
      }
</script>

一些改编自http://forums.asp.net/t/1604156.aspx?Delay+Postback+in+Javascript的代码

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25268062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档