注意:我不确定问题的标题,所以请随时编辑它。
我想暂停在.aspx页面中执行page_laod事件。以下是我的情景。
请注意我已经简化了代码,我的实际代码有点不同。
我有以下Page1.aspx,其中aspx代码如下。
<%@ Page language="c#" Codebehind="Page1.aspx.cs" AutoEventWireup="false" Inherits="Ass1.Page1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<!------------------------- HTML code like title etc.. ------------------------->
<script src='gatc.js' async defer></script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
</body>
</HTML>
和Page1.aspx.cs的Page_Load事件如下
private void Page_Load(object sender, System.EventArgs e)
{
LogPDF(CatmastCat);
Response.Redirect("/PDF/Pdf1.pdf");
}
正如您所看到的,我在页面中做的不多,此页面只是将请求转移到特定的PDF。
我的问题最近我们公司已经开始在所有网页上实施GATC(Google解析),我在网页上添加了GATC文件但实际上因为我们在page_load本身有Response.Redirect("/PDF/Pdf1.pdf");
浏览器直接将页面重定向到PDF但我需要做的事情应该首先执行gatc.js
,然后重定向到PDF,以便GATC可以跟踪page1.aspx上的点击。
此外我不想在.cs文件中进行更改,因为我需要上传整个项目(这是一个安静的大)DLL,如果我在.cs文件中进行任何更改。所以我想通过仅改变.aspx文件来处理这个问题。
我已经尝试过跟随,但我认为它不是在跟踪
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<%@ Page language="c#" Codebehind="Page1.aspx.cs" AutoEventWireup="false" Inherits="Ass1.Page1" %>
<HTML>
<HEAD>
<!------------------------- HTML code ------------------------->
<script src='gatc.js' async defer></script>
</HEAD>
/////////////// Change here
<script runat="server">
protected override void OnPreInit(EventArgs e)
{
System.Threading.Thread.Sleep(2000);
}
</script>
/////////////// Change here
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
</body>
</HTML>
请建议我解决这个问题..
答案 0 :(得分:1)
要禁用重定向,您只需在.aspx文件中定义自己的版本Page_Load:
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
LogPDF(CatmastCat);
}
</script>
然后处理必须在客户端完成。您只需等待分析调用完成。
这取决于您的分析版本,请参阅:
https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced
设置命中回调
在某些情况下,例如跟踪出站链接时,您可能希望这样做 知道跟踪器何时完成发送数据。
它会导致类似:
ga('send', 'pageview', {
'page': '/Page1.aspx',
'hitCallback': function() {
window.location='http://mydomain.com/PDF/Pdf1.pdf';
}
});
或
https://developers.google.com/analytics/devguides/collection/gajs/
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
_gaq.push(function() {
window.location='http://mydomain.com/PDF/Pdf1.pdf';
});