$(document).ready(function() {
$('a').click(function(event) {
var $a = $(event.target);
if ($a.is('a')) { //if the event is triggered by an <a> tag
//append refid querystring to href
if it is not an external url and it refers to
an ASPX page and does not already contain
refid in querystring
var appendrefid =
$a.attr("href").toLowerCase().indexOf("http://") == -1
&&
$a.attr("href").toLowerCase().indexOf("https://") == -1
&&
$a.attr("href").toLowerCase().indexOf(".aspx") != -1
&&
$a.attr("href").toLowerCase().indexOf("refid=") == -1;
if (appendrefid) {
event.preventDefault();
location.href = $a.attr("href") + "?refid=" + GetQStringVal("refid");
}
}
});
});
/* function to read value of the given key, x, from querystring */
function GetQStringVal(x) {
var a = location.search.substring(1); var b = a.split("&");
for (var i = 0; i < b.length; i++) {
var c = b[i].split("=");
if (c[0].toLowerCase() == x.toLowerCase()) { return c[1]; }
}
return "";
}
Here the main page, where the content is coming from the database, is always requested with refid in the querystring and the above script reads the refid from the original request and appends it to the newly requested page when the link is clicked.
No comments:
Post a Comment