我有一些像这样的代码:
$('.entry a:first').click(function()
{
<?php header("Location:" . "http://www.google.com"); ?>
});
我想知道如何使用Javascript实现这一目标。
答案 0 :(得分:29)
你不能以这种方式混合JS和PHP,在页面发送到浏览器之前呈现PHP(即在运行JS之前 )
您可以使用window.location更改当前页面。
$('.entry a:first').click(function() {
window.location = "http://google.ca";
});
答案 1 :(得分:12)
PHP代码在服务器上执行,因此在浏览器看到JavaScript之前执行重定向。
您还需要在JavaScript中进行重定向
$('.entry a:first').click(function()
{
window.location.replace("http://www.google.com");
});
答案 2 :(得分:2)
你将js和php的应用完全无效。
你必须了解JS在客户端运行的事实,一旦页面加载它无关紧要,页面是php页面还是jsp或asp。它执行DOM并且只与它相关。
但是你可以做这样的事情
var newLocation = "<?php echo $newlocation; ?>";
window.location = newLocation;
您可以看到,在加载脚本时,上面的代码呈现为不同的形式,如下所示
var newLocation = "your/redirecting/page.php";
window.location = newLocation;
如上所述,php和js融合的可能性很多,你正在做的不是其中之一。