为什么在php中你可以像这样打开一个脚本标签并执行以下操作:
<?php
print("<script>");
print("alert('hey');");
print("</script>");
?>
但你不能这样做:
<?php
print("<script>");
print("document.getElementById('fName').value = localStorage.getItem('FirstName');");
print("</script>");
?>
我只是无法理解有什么区别,如果你能在php内部使用javascript工作,为什么不能点击localstorage?
答案 0 :(得分:3)
不依赖于Javascript的内容。 PHP没有&#34;过滤&#34;您的输出和浏览器无法识别它是PHP脚本的输出。
如果您不以这种方式输出脚本并将其静态写入文档,脚本是否有效?请注意,如果您忘记分号,脚本不会自动添加换行符并可能会生成无效的Javascript代码。
您可以粘贴浏览器错误控制台的输出吗?
答案 1 :(得分:0)
你在浏览这个浏览器的是什么?例如,在IE8之前,甚至不支持IIRC,localStorage。我们将需要有关客户端方面的更多信息,当涉及到它时,客户端Javascript问题。
正如ymmd所说,你使用PHP并不重要;事实上,对于这个问题而言,这是一个不必要的复杂问题。
答案 2 :(得分:0)
您无法在PHP中运行浏览器javascript。你正在做的是写一些文本,发送到浏览器,它将文本解释为javascript,并运行它。
你可以做的是编写文本javascript,在客户端上运行回调到服务器的回复(使用ajax或其他),但你需要编写所有的通信。