CodeIgniter:如何在视图中包含.js文件?

时间:2009-10-09 12:11:08

标签: php codeigniter

我在哪里以及如何在CodeIgniter的Views中包含.js文件?

我试过这个:

<script type="text/javascript" src="system/application/libraries/jquery.js"></script>

我认为index.php是加载视图的那个,所以我猜每次加载页面时当前的dir路径都是root,因为index.php位于root。这是真的吗?

以上一行并非如此我做错了。我有一个CodeIgniter项目。路径是这样的:

localhost/CodeIgniter/system/application

所以我应该使用哪条路径来包含位于

中的jquery.js文件
localhost/CodeIgniter/system/application/libraries

当我想在位于此处的视图中加载jquery.js文件时:

localhost/codeIgniter/system/application/views/till_view.php

7 个答案:

答案 0 :(得分:14)

有一个鲜为人知的解决方案,与硬编码URL或相关文件相比,干净的语法和更多的可移植性非常有效。

<base href="<?=base_url();?>">

<img src="images/logo.gif" alt="Logo" />

在我的文章“Asset handling in CodeIgniter with the BASE tag”上阅读有关如何,内容,原因的详情。

答案 1 :(得分:6)

第一个问题:

这取决于您使用绝对或相对网址。

绝对网址来自您网域的根目录。相对URL是相对于当前目录加载的(包括url段)。

第二个问题: 最好使用绝对URL。由于漂亮的网址,不建议使用相对网址。

最简单的方法是使用url helper,然后像这样使用网站网址功能:

$this->load->helper('url');
echo site_url('system/application/libraries/jquery.js');

聚苯乙烯。我建议在CodeIgniter目录之外添加javascript和图像等内容。

答案 2 :(得分:6)

这不是作为视图的“index.php”文件。视图是执行

时控制器中加载的任何内容

$this->load->view("viewname");

文件“ viewname.php ”可以包含 .js 文件,就像普通的 .html 一样(或 .php )文件会:

<script  src="/url/to/javascript.js" />

您可能需要创建默认视图或“标题”视图,其中包含项目的部分或全部(常见) .js 文件。

-CF

答案 3 :(得分:4)

base_url()对我来说总是很好用

答案 4 :(得分:0)

这是一个与OP特别相关的解决方案,我认为没有其他人提供过。

<script type="text/javascript" src="<?= base_url() ?>libraries/jquery.js"></script>

因此,base_url()将提供直接指向您网站根目录的路径。

答案 5 :(得分:0)

<script type="text/javascript" src="<?php base_url() ?>libraries/jquery.js"></script>

base_url()将提供网站的网址

答案 6 :(得分:-1)

您可以直接访问该文件的最简单方法:

<img src="http://localhost/ci/you_dir/your_img/your_image.png" />

其中ci代表codeigniter。