referraluserid推广ID号跟踪JS处理A标签
网站推广ID号跟踪
xxx.html?referraluserid=123
referraluserid.js JS源文件
referraluserid的参数会自动绑定页面A标签
有时是Post 表单跳转时不传数会丢失,这时可以根据后台或其它方式重新打印到前台页面,让Js重新获取到
<script type="text/javascript">
var referraluserid = '<%=BackReferraluserid%>';// BackReferraluserid 为后台值绑定到Js变量
</script>
紧接着引用JS文件
<script type="text/javascript" src="/Scripts/referraluserid.js"></script>
document.write("<input type='hidden' id='referraluserid' name='referraluserid' />");
$(document).ready(function () {
$("a").each(function () {
if ($(this).attr("href") == "#" || $(this).attr("href") == "") {
$(this).attr("href", "/");
}
});
addUrlParse("referraluserid");
});
function getUrlParams() {
var search = window.location.search;
var tmparray = search.substr(1, search.length).split("&");
var paramsArray = new Array;
if (tmparray != null) {
for (var i = 0; i < tmparray.length; i++) {
var reg = /[=|^==]/;
var set1 = tmparray[i].replace(reg, '&');
var tmpStr2 = set1.split('&');
var array = new Array;
array[tmpStr2[0]] = tmpStr2[1];
paramsArray.push(array);
}
}
return paramsArray;
}
function GetQueryString(name) {
var paramsArray = getUrlParams();
if (paramsArray != null) {
for (var i = 0; i < paramsArray.length; i++) {
for (var j in paramsArray[i]) {
if (j.toLowerCase() == name.toLowerCase()) {
return paramsArray[i][j];
}
}
}
}
return null;
}
// typeof addUrlParse == "function" ? addUrlParse("referraluserid") : "";
function addUrlParse(ruid) {
var ruidValue = GetQueryString(ruid);
if (typeof (referraluserid) != "undefined")
if (referraluserid != null && referraluserid != undefined && typeof referraluserid != "object" && (ruidValue == null || ruidValue == "" || ruidValue == undefined)) {
ruidValue = referraluserid;
}
if (ruid != "" && ruid != null && ruidValue != "" && ruidValue != null) {
var aStr = ruid + "=" + ruidValue;
var url = window.location.search;
try {
$("a").each(function (i) {
var hrefstr = $(this).attr("href");
if (hrefstr != null && hrefstr != "" && hrefstr.indexOf("javascript:") < 0) {
var jinghao = "";
if (hrefstr.indexOf("#") > 0) {
var arr = hrefstr.split("#");
hrefstr = arr[0];
jinghao = arr[1];
}
if (hrefstr.indexOf("#") == -1) {
if (hrefstr.toLowerCase().indexOf(ruid + "=") == -1)
hrefstr = hrefstr + (hrefstr.indexOf("?") > 0 ? "&" + aStr : "?" + aStr);
if (jinghao != "") {
hrefstr += "#" + jinghao;
}
$(this).attr("href", hrefstr);
}
}
});
}
catch (e) {
alert(e);
}
}
}
// var referraluserid = typeof getReferraluserid == "function" ? getReferraluserid() : "";
function getReferraluserid() {
return GetQueryString("referraluserid");
}
//var and_href = typeof getReferraluserid_href == "function" ? getReferraluserid_href("?") : "";
function getReferraluserid_href(a) {
var href = "";
var referraluserid = GetQueryString("referraluserid");
if (referraluserid != null && referraluserid != undefined && referraluserid != "")
href = a + "referraluserid=" + referraluserid;
return href;
}
referraluserid推广ID号跟踪JS处理A标签的更多相关文章
- 现代浏览器原生js获取id号方法
<div id="tests" class="a b c" style="color:#f00">123</div> ...
- 【MVC 2】MVC+EF框架结构实例:注册ID号验证
导读:本篇博客,将通过一个实例,详细介绍MVC+EF的应用.原理性的东西或者说是进一步的解耦和,请看博客: [框架结构 3]MVC+EF实体框架-原理解析.在这里,仅用MVC框架和一个EF生成的Mod ...
- 拿到添加对象的id号方法
以前Hibernate添加对象,想拿到id号的时候都是根据id排序拿到第一条 ,才知道 这样也可以 /** * @Description: 添加一个角色信息 * @ret ...
- 黄聪:WordPress 多站点建站教程(五):获取子站点用户信息(通过输入站点ID号来获取该站点的所有用户)
得到站点ID为1的用户 <ul> <?php $blogusers = get_users('blog_id=1'); foreach ($blogusers as $user) { ...
- mysql删除重复记录语句,删除除了 id 号不同,其他都相同的学生冗余信息
/** 在Mysql下执行: delete from my.stu where id not in( select min(id) id from my.stu group by code) ; 用途 ...
- VC 为静态控件添加事件(修改ID号以后添加事件)
操作系统:Windows 7软件环境:Visual C++ 2008 SP1本次目的:为静态控件添加事件,如:STATIC.Picture Control等等 有时候我们找到一个图片,为对话框背景添加 ...
- 织梦(dedecms)如何清空全部文章和删除后新增文章id号归1的方法
很多朋友在使用织梦程序做网站的过程中,难免需要添加一些测试文章用于测试网站功能模板等,还有些人朋友网站改版需要变更内容的时候,面对着众多的老文章后总是一筹莫展! 由于织梦后台并不自带一键删除整站文章的 ...
- 删除除了 id 号不同,其他都相同的学生冗余信息
删除除了 id 号不同,其他都相同的学生冗余信息2.学生表 如下:id 号 学号 姓名 课程编号 课程名称 分数1 2005001 张三 0001 数学 692 2005002 李四 0001 数学 ...
- 基于ARM-contexA9-Linux驱动开发:如何获取板子上独有的ID号
每个CPU,都有它固定的ID号,ID号就是这个CPU唯一的标识,它可能隐含着CPU的生产日期,版本号,型号等等,那么,在我们的这款友善之臂Tiny4412的板子上,我的这个CPU的ID又是多少呢?从我 ...
随机推荐
- No appenders could be found for logger
在运行代码时,出现下面的错误, log4j:WARN No appenders could be found for logger (genericTest.GenericTest). log4j:W ...
- PAT 1013 数素数 (20)(代码)
1013 数素数 (20)(20 分) 令P~i~表示第i个素数.现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数. 输入格式: 输入在一行中给出M和N, ...
- iOS.Thread.OSAtomic
1. 原子操作 (Atomic Operations) 编写多线程代码最重要的一点是:对共享数据的访问要加锁. Shared data is any data which more than one ...
- Real-time qPCR So Easy?
Real-time qPCR So Easy? [2016-05-27] 实时荧光定量PCR技术是在定性RCR技术基础上发展起来的核酸定量技术,于1996年由美国Applied biosy ...
- 数据存储(直接写入、NSUserDefaults、NSkeyedArchiver)
ios中常用文件存取的方法有: 1.直接写文件的方式,可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据全部存放在一个属性列表文件(*.p ...
- VirtualBox安装android-x86-4.4-r2
https://jingyan.baidu.com/album/a681b0de1373133b184346cf.html?picindex=10
- ubuntu12.04下Qt调试器的使用
最近,我一直在用Qt编写C++程序,但在编写过程中遇到了问题,想用Qt Creator中的调试器调试一下,但调试时(在Qt Creator中已配置好相应的调试器)出现“ ptrace:Operatio ...
- Eclipse快捷键系列
查看Eclipse自定义的快捷键或者自己定义快捷键的方式 Window --> preference --> general --> Keys 在光标所在行之后插入一行,省去了将光标 ...
- Web 文件上传方面的安全问题
一. 文件上传漏洞与WebShell的关系 文件上传漏洞是指网络攻击者上传了一个可执行的文件到服务器并执行.这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等.这种攻击方式是最为直接和有效 ...
- DNSlog实现Mysql注入
step1: 通过DNSlog盲注需要用到load_file()函数.show variables like '%secure%' 查看load_file()可以读取的磁盘. 1.当secure_fi ...