我使用的是symfony 1.4,我编写了一段js代码在模板中使用,我想将它放在一个JS分离的文件中,因为我会在代码中多次使用它。
我使用以下方法将 JS 添加到模板中:
<?php use_javascript('mi_js') ?>
此模板有一些 ajax 调用,可使用 renderPartial 方法刷新 View 区域。这个新区域也使用了JS代码,所以我需要在分部 View 中添加这个代码。 但如果添加:
<?php use_javascript('mi_js') ?>
在部分,那么它不起作用。 为了完成这项工作,我必须将所有 JS 代码放入部分中,例如:
<script type="text/javascript">/*<![CDATA[*/
$('.mi_class').click(function() {
var a = $(this).parent();
...
正如我所说,我不想这样做。
知道我能做什么吗?有什么模板方法可以做到这一点吗?
提前致谢。 亚历杭德罗·G.
最佳答案
必须将代码放入部分的原因如下:
当您使用 use_javascript('mi_js')
时,JS 文件(的路径)将添加到 sfResponse
对象中。然后,当模板渲染时,所有 JS 文件都会通过 get_javascripts()
包含到布局文件中。
但现在,由于您仅渲染部分内容并通过 Ajax 将结果发送回,因此 不 包含 JS 文件。
我建议将您的代码放入函数中并将其添加到 HTML 文件的 header 中。然后在您调用的部分中:
<script type="text/javascript">/*<![CDATA[*/
$('.mi_class').click(the_new_function())
(也许你必须定义参数,我不知道)。
关于php - symfony 部分 View 中的 Javascript 源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2177485/