[英]Access PHP variable in .JS file
我正在尝试访问JS文件中的PHP变量。 js文件被附加在页面的末尾。
现在,我只能想到2种可能的选择,但是两者似乎都有些棘手,我的问题是,这两种方法的优缺点是什么(或者有更好的方法吗?)。
选项1:在HTML文件中使用内联脚本来设置变量。 例如
<body>
<script type="text/javascript">
var link = "<?= $var ?>";
</script>
</body>
选项2:使用HTML data-attributes
将变量分配给HTML容器,然后使用jQuery检索它。 例如
在HTML文件中:
<body>
<div id="container" data-ajaxVar="<?= $var ?>">
Random html
</div>
</body>
在JS文件中:
var link = $("#container").data("ajaxVar");
有什么建议么?
我很确定您应该为此使用json_encode。 它返回php值的JSON表示形式。 像这样:
在你的PHP中
$n1 = array();
echo json_encode($n1);
在你的JavaScript中
var link = $("#container").data(data.n1);
无法做更多,我在打电话,这很痛苦。 一些文档在这里。
您的两种选择本质上是相同的。 这是将静态变量从PHP传递到JS的“最简单”方法-只需将其回显到变量或容器中即可,以后就可以将其提取出来。
与将值嵌入HTML属性中相比,使用实际的JS变量的优点是可以将更复杂的数据类型放置在变量中,例如数组和对象。 使用data-attribute
方法,您几乎被简单的字符串“卡住了”。 这些可以稍后进行转换,但这只是您必须采取的另一步骤。
您的另一种选择是在页面加载后使用AJAX调用来传输数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.