当包含标签被回应时,Javascript不会运行 - PHP,JS,HTML

时间:2011-06-06 18:29:39

标签: php javascript html

嘿,我刚刚创建了一个简单的函数来从模板视图加载JavaScript文件,如下所示:

public function includeJavascript($file){   
        if(file_exists('path/to/js/' . $file)){
            $this->set('script', '<script type="text/javascript" src="/path/to/js/' . $file . '"></script>');
        }
    }

字符串通过$ script传递并在主布局中打印。这意味着当我渲染页面时,我实际上得到了HTML中的<script type="text/javascript" src="/path/to/js/myjavascript.js'"></script>,但JavaScript代码不会运行。这是为什么?

真诚地,为什么

2 个答案:

答案 0 :(得分:0)

试试这个:

public function includeJavascript($file){   
        if(file_exists('path/to/js/' . $file)){
            $this->set('script', '<script type="text/javascript" src="/path/to/js/' . $file . '"></script>');
        }
    }

path/to/js/函数中file_exists之前添加撇号。

如果你看一下你在HTML中发布的代码:

<script type="text/javascript" src="/path/to/js/myjavascript.js'"></script>

请注意myjavascript.js之后的额外撇号?这就是为什么它不起作用。

答案 1 :(得分:0)

暂时将此行添加到myjavascript.js的顶部作为完整性检查..

alert('found myjavascript.js OK!');