调用函数来控制if语句中的确认警报

时间:2013-04-27 21:18:55

标签: php javascript confirm

晚上好.. 我有一个表单,您可以将工作分配给工作人员,但是,如果已分配该工作,则用户可以选择重新分配或返回上一页。 所以我正在尝试编写确认警报的语法,根据他的选择将用户重定向到一个页面或另一个页面, 我将它放在头部内,它是这样的:

function show_confirm() {
    var con = confirm("Already assigned.. would you like to reassign?");
    if (con ==true) {
       window.location = "reassign.php"
    } else {
       window.location = "index.php"
    }
 }

问题是:如何根据if语句调用此函数?我在互联网上看到了一些例子,人们在if语句中直接放置函数(而不是直接调用它),但不会混合使用不同类型的脚本吗? 那么..你如何从这个if语句中调用函数? 我尝试了这个,但它没有用:

$flat=$_POST['flat'];
$check= mysql_query("SELECT * FROM assignment WHERE flat = '$flat'");
$num= mysql_num_rows($check);
if ($num!=0) {   show_confirm();
 } else { //irrellivant code

2 个答案:

答案 0 :(得分:1)

由于这是一个JavaScript函数,你只需将函数本身放在头文件中,然后在PHP中,将if中的函数输出调用:

if ($num!=0) {
   echo '<script type="text/javascript">show_confirm();</script>';
} else { 
   //irrelevant code
}

PHP是一种服务器端脚本语言,而JavaScript是客户端。您无法像尝试那样直接从服务器端调用JavaScript函数。但是,您可以通过PHP将javascript输出到页面,就像我在我的示例中所做的那样。

答案 1 :(得分:0)

是的,你试图在一个不起作用的过程中混合使用php(服务器端)和javascript(客户端)。

当您提交表单以检查它们是否已经分配给您时,需要将它们重定向到确认页面,从那里您可以使用是/否按钮链接到重新分配并返回页面。

最好的解决方案实际上是使用AJAX处理这个问题,但考虑到自然问题,我认为最好坚持使用非ajax工作流程。

如果有意义,请告诉我,如果不是,我会添加更多细节