如何在CI中的控制器中添加脚本

时间:2013-01-23 06:35:54

标签: php codeigniter

我有一个admin.js和admin.css文件。我必须将它包含在作为控制器的admin.php中。因为将js和css包含在perticular模块中而不是在header.php中添加它会更好。提前谢谢。

3 个答案:

答案 0 :(得分:0)

据我所知,没有内置CodeIginiter函数来包含此输出,就像使用CI提供的link_tag()函数的CSS一样。我已经从CI添加了一个名为script_tag()的函数到system / helpers / html_helper.php文件中。功能是:

if ( ! function_exists('script_tag')) {
    function script_tag($src = '', $language = 'javascript', $type = 'text/javascript', $index_page = FALSE)
    {
        $CI =& get_instance();
        $script = '<scr'.'ipt';
        if (is_array($src)) {
            foreach ($src as $k=>$v) {
                if ($k == 'src' AND strpos($v, '://') === FALSE) {
                    if ($index_page === TRUE) {
                        $script .= ' src="'.$CI->config->site_url($v).'"';
                    }
                    else {
                        $script .= ' src="'.$CI->config->slash_item('base_url').$v.'"';
                    }
                }
                else {
                    $script .= "$k=\"$v\"";
                }
            }

            $script .= "></scr"."ipt>\n";
        }
        else {
            if ( strpos($src, '://') !== FALSE) {
                $script .= ' src="'.$src.'" ';
            }
            elseif ($index_page === TRUE) {
                $script .= ' src="'.$CI->config->site_url($src).'" ';
            }
            else {
                $script .= ' src="'.$CI->config->slash_item('base_url').$src.'" ';
            }

            $script .= 'language="'.$language.'" type="'.$type.'"';
            $script .= ' /></scr'.'ipt>'."\n";
        }
        return $script;
    }
}

然后在您的PHP代码中,您可以这样做:

echo script_tag('content / js / jquery-1.4.2.js');

答案 1 :(得分:0)

你问的是如何包含js / css就像链接标签一样?

    class Admin extends CI_Controller {

        function __construct(){
             parent::__construct();
        }
        public function index(){
             $this->template->add_css('path_to_css/admin.css',TRUE);
             $this->template->add_js('path_to_js/admin.js',TRUE);
        }
    }

答案 2 :(得分:0)

您可以在视图页中包含脚本文件,而不是在控制器中包含脚本文件。

例如:

查看页面:Test.php

<script type="text/javascript" src="../application/js/validator.inc.js"></script>
<div>
//your code
</div>

希望这会对你有所帮助...... :)