//this is in php.
function msgbox($msg, $type)
{
if ($type == "alert")
{
// Simple alert window
?> <script language="JavaScript"> alert("<? echo $msg; ?>"); </script> <?
}
elseif ($type == "confirm")
{
// Enter Confirm Code Here and assign the $result variable for use
// Should include "OK" and "Cancel" buttons.
?>
<script language="JavaScript">
if (confirm("<? echo $msg; ?>"))
{
<? $result == "ok"; ?>
}
else
{
<? $result == "cancel"; ?>
}
</script>
<?
}
}
if ($page_title->exists())
{msgbox("page exists,do you want to delete", "confirm");
}
if ($result == "ok")
//code..
问题是$result
没有从确认框中读取值,我认为因为if子句没有被执行而且程序流正在没有if子句的情况下进行。
答案 0 :(得分:1)
您必须了解PHP和JavaScript代码何时执行。首先,服务器运行您的PHP代码。这会生成HTML输出,并传递给您的浏览器,浏览器会执行JavaScript代码。这意味着当您在JavaScript中运行confirm()
时,您的PHP代码已经完成(并且可能正在提供另一个请求)。
您需要重新考虑用户互动。
(顺便说一下,JSP意味着Java Servlet Pages,而不是JavaScript)