如何在javascript文件中获取php会话值

如何在javascript文件中获取php会话值,javascript,php,html,codeigniter,session,Javascript,Php,Html,Codeigniter,Session,我有一个php文件,在其中调用外部takeatour.js文件 在这个js文件中,我需要php会话数据。通过使用代码 $(this).ready(function() { var category = <?php echo json_encode($this->session->userdata('category')); ?>; alert("category="+category); }); $(this).ready(函数(){ var类

我有一个php文件,在其中调用外部takeatour.js文件 在这个js文件中,我需要php会话数据。通过使用代码

$(this).ready(function() {

    var category = <?php echo json_encode($this->session->userdata('category')); ?>;     
   alert("category="+category);
});
$(this).ready(函数(){
var类别=;
警报(“类别=”+类别);
});
这是正确的吗?? 请给我一些建议。
谢谢

您可以将类别值作为参数传递到src属性中。例如:

<script src="myjs.js?category=<?php echo $this->session->userdata('category'); ?>"></script>

.php
添加到javascript文件的末尾。这样服务器就会处理它

如果您将其包含在客户端稍后将下载的页面中,请确保在脚本标记中包含
type=text/javascript”
,否则它将不满意扩展


您使用的任何编辑器都可能不会正确地突出显示语法,因为您不会遵循php惯例。

您可以将会话变量从php代码传递到javascript代码,如下所示:


var variablejs=“”;
警报(“类别=”+variablejs);

请发布您的完整代码!!如果您使用的是静态方法,那么为什么CI?CI有库调用
会话
PHP(服务器)-->HTML-->Javascript(客户端)可能重复。您只能
echo
该值,这样它就会出现在HTML中,以便从javascript获得。客户端无法直接访问PHP变量,但您可以向服务器(例如ajax)询问该值。该文件应具有
.PHP
扩展名。
.js
将不会执行
PHP