日期:2014-05-16  浏览次数:20489 次

JS Confirm() 函数的问题
本帖最后由 AAA428 于 2013-02-26 09:31:26 编辑
我用php写的页面代码,页面叫add.php, 是从另一个页面admin.php重定向过来的,重定向的时候传递了几个参数。
于是在add.php的最开始,我先接受所传递的参数
$name, $description, $capacity...
然后调用函数检查name是否valid,如果非法的话,询问用户是否确定要将其存入数据库。

刚开始的时候我用的是<a href...> 标签,用户可以点击Yes 或No,如果No的话,直接返回admin页面,如果用户选择Yes,我就reload add.php页面,同时传送一个参数Confirm = Y告诉系统要将这些数据存入数据库。

用户确认的源代码如下
 

           .......省略
     else {
           echo "<div id=\"del_room_confirm\">\n";
           echo "<p>\n";
           echo "$name is not alive, are you sure to add it into system?\n";
           echo "</p>\n";
           echo "<div id=\"del_room_confirm_links\">\n";
           echo "<a href=\"add.php?type=room&amp;name=$name&amp;area=$area&amp;description=$description&amp;capacity=$capacity&amp;confirm=Y\"><span id=\"del_yes\">" . get_vocab("YES") . "!</span></a>\n";
           echo "<a href=\"admin.php?area=$area\"><span id=\"del_no\">" . get_vocab("NO") . "!</span></a>\n";
           echo "</div>\n";
           echo "</div>\n";
      }
     

一切都很好,没有问题。。。
然后想改进下用JS的confirm窗口,于是改了代码如下

       

            ......省略
       else {
            echo "<script type=\"text/javascript\">";
            echo "window.onload=function() {
                      var v=confirm(\"$name is not alive, do you want to add it into system? $description\");
                      if (v){
                            window.location.href = \"add.php?type=room&amp;name=$name&amp;area=$area&amp;description=$description&amp;capacity=$capacity&amp;confirm=Y\";
                       }
                      else {
                            window.