2014-10-07 607 views
1

我在php代码中嵌入了一些javascript。这是必要的检查一些PHP会话变量的值,并根据结果,我使用一些JS内的PHP来决定是否会显示一些元素。这里是一个例子:在php代码中嵌入javascript

<?php 

if ($_SESSION['myVar']==2) 
     { echo '<script type="text/javascript" > 

      document.getElementById("element1").style.visibility = "hidden"; 
     document.getElementById("element2").style.visibility = "hidden"; 

      </script>'; 
?> 

该代码适合我。 我的问题是:在Web服务器上执行的JS(因为它嵌入在PHP代码中),在将页面发送到客户端浏览器(以及我认为的)之前初始化页面,还是php部分在服务器上运行,并且JS在客户端运行后?

我知道在JS运行在客户端浏览器正常情况下,但在这种情况下可疑,

我是一个初级程序员和任何帮助表示赞赏,谢谢提前。

+2

从来没有组合服务器端和客户端脚本。我有最糟糕的经历。如果您真的想在客户端验证中使用PHP,请使用AJAX调用并从PHP获取JSON以用于JavaScript。 – 2014-10-07 12:12:03

回答

1

Javascript is always在客户端的浏览器中执行。 php代码只是将JavaScript代码作为一段文本插入,浏览器将其作为代码读取。

1

JavaScript是不管在客户端执行,但你的PHP代码,你刚插入的代码,使其可用于浏览器来执行它...

1

腓发送的JavaScript回客户端作为一个响应,然后在客户端运行JavaScript。 请阅读本答题123,您可能有更好的解释>>PHP & Embedded JavaScript Behavior。谢谢

-1
<?php 

if ($_SESSION['myVar']==2) 
     { 
?> 
<script type="text/javascript" > 
     document.getElementById("element1").style.visibility = "hidden"; 
     document.getElementById("element2").style.visibility = "hidden"; 
</script> 
<?php } ?> 
+0

这不是回答@the4thDimension的问题。 – Nippey 2014-10-07 12:46:18