0

我是一个相对较轻的 JavaScript 用户,所以这个小操作让我很伤心——我确定我错过了一些东西。

我想要的只是打开一个弹出窗口,将一个值 - emplogin,一个名为 getEmp 的字符串变量 - 传递给一个沼泽标准的 .php 页面:

<script type="text/javascript">
function getEmployeeInfo(getEmp)
{
window.open ("../Pages/Employee_Info.php?emplogin=" + getEmp + ",\"mywin\",\"menubar=0,resizable=1,scrollbars=1,width=600,height=450\"");
}
</script>

它工作......有点。通过查看生成的 $_REQUEST 对象来测试结果表明该页面正在接收 $emplogin 作为

Array
(
    [emplogin] =>JohnDoe,"mywin","menubar=0,resizable=1,scrollbars=1,width=600,height=450"
)

IOW,Window.Open() 的第二个和第三个参数作为 PHP 接收的 $emplogin 的一部分传递,而不是由 JavaScript 解析!(我正在使用 'echo htmlspecialchars(print_r($_REQUEST, true));')

我确定在转义参数时我做的不对,但我无法找到正确的搜索词。感谢您的任何指导!

4

4 回答 4

3

尝试这个:

<script type="text/javascript">
function getEmployeeInfo(getEmp)
{
    window.open ("../Pages/Employee_Info.php?emplogin=" + getEmp, "mywin", "menubar=0,resizable=1,scrollbars=1,width=600,height=450");
}
</script>
于 2011-06-07T15:49:34.253 回答
1

您将第二个和第三个参数包含在 URL 字符串中,因此它们都被视为一个参数。

你想要的是: window.open ("../Pages/Employee_Info.php?emplogin=" + getEmp,"mywin","menubar=0,resizable=1,scrollbars=1,width=600,height=450");

于 2011-06-07T15:51:47.717 回答
0

应该是这样的:

<script type="text/javascript">
function getEmployeeInfo(getEmp)
{
window.open ("../Pages/Employee_Info.php?emplogin=" + getEmp + ,"mywin","menubar=0,resizable=1,scrollbars=1,width=600,height=450");
}
</script>
于 2011-06-07T15:50:17.553 回答
0

urlencode 您的变量并在 open 命令中删除其他参数的转义

于 2011-06-07T15:51:48.077 回答