我一直在阅读如何将变量从php网页传递到单独的javascript文件,但是没有运气。
请不要将此标记为重复,因为我知道有很多事情告诉我们如何做到这一点。我认识到这些帖子,而不仅仅是检查我的语法,或者看看我的具体情况是否有任何独特之处导致这些方法无效。
所以我有一个PHP网页,我将一些变量发布到:
DOCTYPE HTML
...
<?php
$id = $_POST["id"];
$name = $_POST["name"];
?>
...
HTML code with some usage of PHP variables
javascriptFunction()
end page
然后在一个单独的javascript文件中我有:
var markerlocation = '<?php echo $point; ?>';
function javascriptFunction () {
alert("markerlocation");
});
这似乎很直接,但无论出于何种原因我都无法得到它。我也试过json编码。
完成后我可以删除它。 真诚的感谢您的帮助。
答案 0 :(得分:2)
我的方式:
<强> PHP 强>
<?php
//You may declare array for javascript
$jsVal = array(
'user_name' => 'Peter',
'email' => 'peter@gmail.com',
'marker_location' => '102,300'
);
?>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>var phpConfig = jQuery.parseJSON(<?=json_encode($jsVal)?>);</script>
分隔的javascript文件
alert(phpConfig.marker_location);
你可以尝试一下
答案 1 :(得分:0)
您可以将脚本标记源指向.php文件而不是.js文件,我认为这就是您想要的。也适用于图像标签;)
编辑:某些浏览器可能需要text / javascript mime标头才能使其正常工作,但使用PHP并不难,我假设你已经知道如何做到这一点。
旁注:如果您计划允许客户端缓存javascript输出,则可能只应使用此选项。如果您不希望客户端缓存它,则需要设置其他标头。