小草 发表于 2012-7-4 10:34:00

CI中如何让js调用php中的变量

控制器:
class Index extends CI_Controller
{   
// 构造函数
function __construct()
{
parent::__construct();

// 载入url类和模板解析类
$this->load->helper('url');
$this->load->library('parser');
}

// 首页(默认展现合肥地区)
function index($locat = 'hf')
{   
$data = array(
   'locat'      => $locat,
);
$this->parser->parse('index', $data);
}
}

view下index.php中有一段js,想调用$locat变量的值

jQuery(function($){
$("#count_p").parent("div").hide(); //消除
$("#menu #$locat").attr("class", "selected");
});

这么写无法实现,该怎么写才行?望高手指教

netputer 发表于 2012-7-4 10:49:21

CodeIgniter 提供了一个 JS 类,或许你可以尝试一下~

qi_ruo 发表于 2012-7-4 11:02:33

可以在页面中的js代码中直接使用<?php echo $locat; ?>使用该变量

Hex 发表于 2012-7-4 11:05:36

首先,js 调用 PHP 变量,这句话就是伪命题,js 和 PHP 完全不可能互相调用的。
其次,你可以用 PHP 生成 JS,这个可能就是你说的调用。
PHP 生成 HTML 和生成 JS 没有本质区别,好好思考一下。

小草 发表于 2012-7-4 11:19:00

qi_ruo 发表于 2012-7-4 11:02 static/image/common/back.gif
可以在页面中的js代码中直接使用使用该变量

就是不想出现echo这样的php代码,可以实现吗

小草 发表于 2012-7-4 11:19:59

Hex 发表于 2012-7-4 11:05 static/image/common/back.gif
首先,js 调用 PHP 变量,这句话就是伪命题,js 和 PHP 完全不可能互相调用的。
其次,你可以用 PHP 生成 J ...

用Php生成Js是什么意思?我是希望在view里面调用控制器里的php变量

Hex 发表于 2012-7-4 11:56:52

小草 发表于 2012-7-4 11:19 static/image/common/back.gif
就是不想出现echo这样的php代码,可以实现吗

在 view 中是必须使用 echo 的。

Hex 发表于 2012-7-4 11:57:14

小草 发表于 2012-7-4 11:19 static/image/common/back.gif
用Php生成Js是什么意思?我是希望在view里面调用控制器里的php变量

我已经明确说了,PHP 无法“调用”JS,不知道你想做什么?

yunnysunny 发表于 2012-7-4 12:01:38

php运行在服务器端,是不可能调用浏览器端的语言的。否则岂不是黑客行为了。

sdink 发表于 2012-7-4 13:45:47

首先,js 调用 PHP 变量,这句话就是伪命题,js 和 PHP 完全不可能互相调用的。
其次,你可以用 PHP 生成 JS,这个可能就是你说的调用。
PHP 生成 HTML 和生成 JS 没有本质区别,好好思考一下。
无非就是要读php里的变量嘛 用ajax 或是在view里<script> var test="<?php $var; ?>";</script>
页: [1] 2
查看完整版本: CI中如何让js调用php中的变量