Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP echo Javascript函数不执行任何操作_Javascript_Php_Function_Header_Echo - Fatal编程技术网

PHP echo Javascript函数不执行任何操作

PHP echo Javascript函数不执行任何操作,javascript,php,function,header,echo,Javascript,Php,Function,Header,Echo,我的网站有一个PHP邮件代码。无论何时运行,它都应该重定向(标题)回主页面,并弹出一个窗口,显示“message sent”或其他内容。我使用Javascript实现了这个功能,效果很好。这是我的“global.php”中的代码,仅供参考 var msg = document.getElementById("msg"); var opnmsg = function() { msg.classList.remove("boxoff"); msg.classList.ad

我的网站有一个PHP邮件代码。无论何时运行,它都应该重定向(标题)回主页面,并弹出一个窗口,显示“message sent”或其他内容。我使用Javascript实现了这个功能,效果很好。这是我的“global.php”中的代码,仅供参考

  var msg = document.getElementById("msg");
  var opnmsg = function()
  {
    msg.classList.remove("boxoff");
    msg.classList.add("boxactive");
  }
没什么了不起的。默认情况下,“msg”是关闭的,如果运行opnmsg(),它将打开。这是可行的-如果我在inspector控制台中键入它,窗口就会显示出来。而且,如果我在文件中的任何其他地方写它,它也可以工作

不幸的是,我无法让窗口仅在运行“mail.php”时显示。它会正确地重定向到web页面,但没有显示任何内容。有趣的是,alert()等基本函数工作正常。下面是有问题的代码片段:

  echo '<script type="text/javascript">
    window.location = "/en/";
    opnmsg();
  </script>';
echo'
window.location=“/en/”;
opnmsg();
';
在使用window.location之前,我只使用了header命令,但在这种情况下,不会运行任何命令,甚至不会运行alert()。此外,该位置本身位于根目录上,然后根目录会根据浏览器的语言重定向到另一个页面,尽管我临时将其直接链接以进行测试(没有区别)。页面本身(“index.php”)确实有另一个加载“global.php”(js代码所在位置)的头命令,但是,即使将js脚本复制到索引中,它似乎也不起作用。此外,我还尝试了许多替代opnmsg()函数的方法,包括直接将Javascript片段复制到echo中。什么都不管用


有什么问题吗?谢谢。

您的代码永远无法工作<代码>窗口。位置会将您带到另一个网站,因此会停止上一个网站运行的任何javascript。在
窗口之后基本上没有任何内容。将执行位置

解决此问题的最简单方法是在重定向中包含
GET
参数,并在重定向到的页面上检查该参数


如果你真的想要javascript,你也可以做一个
ajax请求
,从另一个站点获取相关数据

什么是javascript控制台?有错误吗?window.location将重定向,对opnmsg的调用将无法按预期工作,为什么不使用
header()
?@lawrencerone正如我在原始帖子中所说,header()根本不起作用,甚至对于在window.location上工作的alert()命令也不起作用。@eliassores我以前没有注意到它(因为在我读它之前它会很清楚),但是现在它说“uncaughtreferenceerror:opnmsg未在mail.php:3中定义”,可能您是在将函数用法放在声明之前