在 "open in new window" link 中插入变量

Insert variable in "open in new window" link

我有以下代码:

<script language="javascript" type="text/javascript">

var affglcid = 'xyz';
</script>

<a href="http://oursite.com/" onclick="location.href=this.href+affglcid;return false;">Link</a>

它基本上接受一个 JS 变量并将其附加到 link。

所以,如果变量是:

var affglcid = 'xyz';

最后的 link 将是:

http://oursite.com/xyz

如果变量是:

var affglcid = 'zyz';

最后的 link 将是:

http://oursite.com/zyx

几乎完美。问题是,当我们在外部 window 中打开 link 时,URL 总是

http://oursite.com/

没有附加变量。即使 link 在新的 window 中打开,脚本也会追加变量?

您必须在页面加载时设置 href,因为在新 window 中打开时,不会调用 onclick

<script>
window.onload = function setHref(){
var aa = 'xyz';
var oldLink=document.getElementById('link').href;
document.getElementById('link').setAttribute('href', oldLink+aa);
}
</script>
<a id="link" href="http://oursite.com/">Link</a>