通常,当我需要在javascript代码中使用一些php时,我会像这样把代码放到头部:
<script>
$(function() {
$("input#datepicker").val('<?php echo $date ?>');
});
</script>
这样,我可以在javascript代码中使用一些php变量。它工作正常。
如果我想将所有javascript代码放在外部js文件中,你知道怎么做:
<script type="text/javascript" src="js/admin.js"></script>
也许它根本不重要。但我使用外部js文件编码,并且我想知道是否可以这样做。
答案 0 :(得分:4)
您需要将js文件设为php文件。
<script type="text/javascript" src="js/admin.php"></script>
如果您仍想保留js扩展名,则需要为您的网络服务器重写。
<强> JS / admin.php的强>
<?php
header("content-type: text/javascript");
?>
$(function() {
$("input#datepicker").val('<?php echo $date ?>');
});
如果你想在这里使用js扩展名是一个重写的例子。
<强> Nginx的强>
rewrite /js/admin.js /js/admin.php;
<强>的Apache 强>
RewriteEngine On
RewriteBase /
rewrite /js/admin.js /js/admin.php;
答案 1 :(得分:1)
最好将js缓存到客户端浏览器中,然后将变量发送到客户端。 如果您将所有js作为新响应提供服务。考虑带宽和对Web服务器的另一个请求。
<script type="text/javascript" src="js/admin.js"></script>
<script type="text/javascript">
var myVar = <?php echo json_encode($myVar); ?>;
myAdminFunction(myVar);
</script>