Onload popup javascript

时间:2013-12-13 05:09:28

标签: javascript jquery

我试图在页面加载后立即加载弹出窗口。我已经在网站上使用过这个功能了。然而,现在没有任何东西出现。

<script>


window.onload = function (<?php echo $name . "," . $club ;?>){
                var txt = name + " has been deleted from this club";

                $.prompt(txt,{ 
                    buttons:{Delete:true},
                    close: function(e,v,m,f){

                        if(v){
                            var uid = f.userid;

                            window.location = "manageclub.php?id=" + club;                                  

                        }
                        else{}

                    }
                });
            }



</script>

1 个答案:

答案 0 :(得分:2)

首先,我应该说这种做法并不是很正确;您正在构建一个新页面,以便您可以显示一个JavaScript提示,然后重定向到另一个页面...我确信可以更好地完成。

那就是说,答案就在这里。你不能像这样在函数定义中传递参数;改为在函数体内定义那些变量;

其次,您没有正确转义club以便在网址中使用。

window.onload = function ()
{
  var name = <?php echo json_encode($name) ?>,
  club = <?php echo json_encode($club) ?>,
  txt = name + " has been deleted from this club";

  $.prompt(txt, {
    buttons:{Delete:true},
    close: function(e,v,m,f) {
      if (v) {
        var uid = f.userid;

        window.location = "manageclub.php?id=" + encodeURIComponent(club);    
      }
    }
  });
}

我使用encodeURIComponent()在重定向代码中正确地在JavaScript中转义club,并使用json_encode()来转义要在JavaScript中使用的PHP变量。