新窗口中的弹出窗口将在新选项卡中打开

时间:2014-05-20 03:27:27

标签: javascript php

我有一个用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。

1 个答案:

答案 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之类的字符串中。