我在脚本中有一些PHP代码,所以我需要 JavaScript值作为PHP变量,如下所示:
<script>
;
var js_var = 123;
var php_var = <?php js_var ?>;
alert(php_var);
;
</script>
使用jQuery将值发送到PHP页面将返回值,但不会返回PHP变量:
$.get("page.php", {js_var_name: js_var}, function(data) {alert(data)});
我还尝试了所有jQuery AJAX函数:load(),post()和ajax()方法,它们都没有按上述要求传回PHP的值。
是否可以使用jQuery实现上述功能?
答案 0 :(得分:2)
可能您遇到语法问题:
var php_var = <?php js_var ?>;
除非您使用define()
,否则您的php变量应以$
开头,并且您需要回显它以便将其打印到页面
var php_var = <?php echo $js_var ?>;
如果你假设php会读取之前的javascript js_var=123
,那么它就不会。 Javscript是客户端语言,php是服务器端。
答案 1 :(得分:0)
你不能简单地混合使用PHP和JavaScript。前者在服务器上执行,后者在客户端上执行,即在用户的浏览器中执行。为了将值从PHP传递到JavaScript,您需要通过PHP输出JavaScript代码,或者像您尝试的那样对PHP脚本执行AJAX请求。使用AJAX时,使用PHP脚本返回JSON字符串是最简单的解决方案。使用$.get()
调用此脚本时,结果将存储在JavaScript变量中,您可以从中访问所有值。
花点时间深呼吸......然后再开始考虑你的范围。