正如title所说,我正在努力弄清楚如何在CI上使用javascript和jquery库。
按照the docs中的指令,我在控制器中加载库:
$this->load->library('javascript');然后,定义jQuery文件(jquery.min.js)在config.php中的位置:
$config['javascript_location'] = 'http://localhost/ci/assets/js/jquery/');之后,我打开视图文件并放入以下两行:
<?php echo $library_src;?>
<?php echo $script_head;?> 第一个错误出现在这里:未定义变量$library_src和$script_head (不知道在哪里设置它们)
无论如何,我已经对这些行进行了注释,并继续使用jquery,方法是将jquery加载到我的控制器中:
$this->load->library('jquery');下一个错误:无法加载所请求的类: jquery。(它似乎找不到库,我搞砸了什么?)
检查系统文件夹--它看起来所有的文件都就位了:
system/libraries/Javascript.php
system/libraries/javascript/Jquery.php提前感谢您的帮助!
发布于 2011-02-19 14:53:03
需要注意的是,这个驱动程序被标记为实验性的,所以我不会依赖它。
此外,我个人认为,尝试将应用程序的服务器端部分与客户端部分直接混合,会引起混淆和头疼。
要在您的视图中使用javascript,我首先要像这样加载它们.
<script type="text/javascript" src="<?= base_url() ?>path/to/jquery.js"></script>发布于 2011-03-28 12:44:11
将代码放在config.php中如下所示:
$config['javascript_location'] = 'js/jquery/jquery.js';
$config['javascript_ajax_img'] = 'images/ajax-loader.gif';在控制器文件(例如控制器/sample.php)中,键入以下代码:
function __construct()
{
parent::__construct();
$this->load->library('javascript');
}
function index()
{
$data['library_src'] = $this->jquery->script();
$data['script_head'] = $this->jquery->_compile();
$this->load->view('sampleview', $data);
}在视图文件(例如视图/sampleview.php)中,键入以下代码:
<?php echo $library_src;?>
<?php echo $script_head;?>这对我有用。我希望它也适用于你。XD
发布于 2011-11-08 03:55:46
因为这个驱动程序是试验性的,所以文档还没有完全到位。但我找到了解决办法。
首先,文档中有一个错误。除非您更改核心Javascript库(不建议更改),否则引用变量是,而不是 $script_head,实际上是$script_foot。
第二,一旦你打完电话,你似乎需要跑
$this->javascript->external();和
$this->javascript->compile();这些函数设置$library_src和$script_foot变量。
要将所有这些都放在一起,在您的控制器中,您将拥有:
class Some_Controller extends CI_Controller {
public function index()
{
$this->javascript->click('#button', "alert('Hello!');");
$this->javascript->external();
$this->javascript->compile();
$this->load->view('index');
}
}在你看来
<html>
<head>
<?php echo $library_src; ?>
<?php echo $script_foot; ?>https://stackoverflow.com/questions/5051059
复制相似问题