加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – window.location更改失败AJAX调用

发布时间:2020-12-16 03:53:43 所属栏目:asp.Net 来源:网络整理
导读:我有一个点击跟踪 AJAX功能(在.aspx页面上调用WebMethod),我需要在用户点击链接时调用它. 不幸的是,我正在使用window.location =“newUrl”来更改页面,这似乎使AJAX调用失败.有没有解决的办法? 我不需要从AJAX调用中获取任何信息,我只需要确保调用WebMethod
我有一个点击跟踪 AJAX功能(在.aspx页面上调用WebMethod),我需要在用户点击链接时调用它.

不幸的是,我正在使用window.location =“newUrl”来更改页面,这似乎使AJAX调用失败.有没有解决的办法?

我不需要从AJAX调用中获取任何信息,我只需要确保调用WebMethod.

我知道我可以直接重定向success()或failure()调用,但是我必须等待clickTracking()方法运行,这需要~1s.这是项目规范中的协议所不能接受的,因此不是一个可行的解决方案.

解决方法

而不是使用AJAX,为什么不直接将用户发送到记录点击的ASPX页面,然后发送位置标题以重定向到新的URL?例如,在链接点击时,会发生以下情况:

window.location = "/redirect.aspx?track=true&url=" + encodeURIComponent(newUrl);

然后redirect.aspx将处理跟踪和重定向到新URL.在发送用户之前,这几乎是您无需等待AJAX??请求即可完成的唯一方法.

另见:Redirecting Users to Another Page (MSDN)

值得注意的是,您每天都会在许多网站上看到此方法.最常见的是,它们存在于广告中. AdSense广告链接如下所示:

http://www.google.com/aclk
    ?sa=L&ai=C6DnFKnl1S5zhKoSBjAeqyKzKBPOD_2ehlIXfD9WsvQsQAVDQzK______
    8BYLvOuYPQCsgBAaoEGU_Q8k4OJin9jMDXAD6KQ_2Dsv7xyokLxRY
    &num=1&ggladgrp=13269254452699041863&gglcreat=8511532373602616220
    &sig=AGiWqtwzFm2sTimBuQpkD5kazyRNkkqH3w
    &q=http://www.amazon.co.uk/s/%3Fie%3DUTF8%26keywords%3Dhello%2Bworld

是啊,无论如何(我把它击倒了一下).当您单击它时,您将在http://www.google.com/aclk登陆,在跟踪点击后会将您重定向到最终站点.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读