I observed it closely by debugging in IE that; IE did set document.referrer
if I submit form or click any link but when I redirect to another page using j
Try this:
<script type="text/javascript">
$("#button").click(function(){
window.open("about:blank", "win_name", "height=370,width=365, top=50, left=90, scrollbars=yes,resizable=no,menubar=no");
sForm = '<form action="url.php" method="post" target="win_name">';
sForm += '</form>';
//alert(sForm);return;
$(sForm).appendTo('body').submit();
return;
});
</script>
INFO: Internet Explorer Does Not Send Referer Header in Unsecured Situations
When linking from one document to another in Internet Explorer 4.0 and later, the Referer header will not be sent when the link is from an HTTPS page to a non-HTTPS page. The Referer header also will not be sent when the link is from a non-HTTP(S) protocol, such as file://, to another page.
Microsoft
IE doesn't Support referrer while you try to send it in pop-up or use window.location.You can send your referrer in many ways. But you will not have it if you try to get it in server side if while change location through a JS popup or change location in JS while using IE, for IE built-in security issue. Check window or window.open property.you can go here
Try this
<script type="text/javascript" >
function redirect(url) {
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
var referLink = document.createElement('a');
referLink.href = url;
document.body.appendChild(referLink);
referLink.click();
} else {
location.href = url;
}
}
</script>
source
The easiest solution is you can use window.opener.location.href, it works fine in all browsers.