我有一个带有按钮的test.php页面,点击它调用javascript函数。
test.php的内容 按钮调用myfunct()
test1.php的内容 一个id =“message”的div
function myfunct(){ window.location的( 'page.php文件'); document.getElementById(“message”)。innerHTML =“更新的消息”; }
page.php的内容是 头( '位置:http://test1.php'); 出口;
现在的问题是,它被重定向到所需的网页,但之后它没有执行此代码'document.getElementById(“message”)。innerHTML =“Updated message”;'。
答案 0 :(得分:0)
这是b / c重定向后的代码没有在新页面上执行。
你可以做的是将消息传递为get参数,如此。
test.php的
function myfunct(){ window.location('page.php?message=[put message here]');
page.php文件
header('Location: http://[some_page].com/?message='.$_GET['message']);
然后在最后一页上使用$_GET['message'];
获取消息并将其放在页面上的某个位置。
请记住验证$ _GET数组中是否存在变量等
答案 1 :(得分:0)
您无法在重定向到(page.php)的页面上从test.php运行javascript。调用window.location('page.php')
时,浏览器立即停止在test.php上执行脚本并开始加载page.php。要在page.php上运行javascript,您需要将其包含在该文件中。
如果您需要从test.php传入数据(例如,“更新消息”),您可以通过重定向到window.location(“page.php?message = Updated%20message”)将其作为get参数执行。
答案 2 :(得分:0)
这不起作用。原因如下:
我不确定您要实现的目标,但有许多变通方法。这是一个简单的:
test.php的
function myfunct(){
<?php
session_start();
if (!empty($_SESSION['updated'])) {
$_SESSION['updated'] = '';
echo "window.location('page.php'); ";
} else {
echo 'document.getElementById("message").innerHTML="Updated message";';
}
?>
}
page.php文件:
<?php
session_start();
$_SESSION['updated'] = true;
header('Location:http://webpage...');