我有一个用PHP创建的日历。在这个日历中,我按日期列出了load_id。我做了一个弹出窗口,显示每个负载的更多数据。我希望它显示为不在新标签中的弹出窗口。我已经尝试将其作为一个函数,但由于我不知道javascript我无法弄清楚如何将load_id传递给url。如果我将“this.href”替换为函数中的url,它就像魅力一样。但是我再次不知道如何将load id作为变量传递,因此对我来说不起作用。如果有人能指出我错误传递变量的地方,我会非常感激!
这就是我现在所拥有的:
echo "<span class='load_shipped'>
<a href='cal_popup.php?load_id=".$load_id."'
onclick='window.open(this.href, '_blank','left=100,top=100,width=500,height=500,toolbar=1,resizable=0');'>
".$load_id."
</a>
<br>
</span>\n";
我试过这个也无济于事:
echo "<span class='load_shipped'>
<a onclick='popup(".$load_id.");'>".$load_id."</a><br>
</span>\n";
使用Javascript:
<script>
function popup(id){
window.open('cal_popup.php?load_id=id', '_blank','left=100, top=100,width=500,height=500,toolbar=1,resizable=0');
}
</script>
所有这些都是通过'id'而不是真正的load_id。
答案 0 :(得分:2)
似乎您遇到了麻烦,因为您使用相同的引号来包装属性onclick
并定义window.open
调用的参数。尝试在属性上使用双引号。您还需要return false;
末尾的onclick
,以防止链接正常工作。
echo "<span class='load_shipped'>
<a href='cal_popup.php?load_id=".$load_id."'
onclick=\"window.open(this.href, '_blank','left=100,top=100,width=500,height=500,toolbar=1,resizable=0');return false;\">
".$load_id."
</a>
<br>
</span>\n";
在上一个有popup
函数的示例中 - 请注意,您需要将id
变量连接到'cal_popup.php?load_id=' + id
之类的字符串中。