smarty定界符与js冲突的问题
2010-01-29 11:42 245人阅读 评论(0) 收藏 举报
在使用smarty的时候,如果没有更改smarty配置,smarty的定界符是{ },大家经常可能碰到模板页中js无法正确执行的问题。
这就是因为smarty引擎把js中{ }之间的内容也当做smarty语句来处理,本人总结的解决这个问题主要有三个:
1.更改smarty配置文件中的定界符。(就我而言,已经习惯了用{ },所以一般不用这种方法。)
2.把javascript代码写到一个js文件中,在模板页中引用即可。
3.使用smarty内置的literal标签,此标签内的数据将会被当做文本处理。例如
{literal}
<script language=javascript>
........
</script>
{/literal}
有时,我们需要输出定界符{ },则可以使用{ldelim}和{rdelim}标签来输出左右定界符。
2010-01-29 11:42 245人阅读 评论(0) 收藏 举报
在使用smarty的时候,如果没有更改smarty配置,smarty的定界符是{ },大家经常可能碰到模板页中js无法正确执行的问题。
这就是因为smarty引擎把js中{ }之间的内容也当做smarty语句来处理,本人总结的解决这个问题主要有三个:
1.更改smarty配置文件中的定界符。(就我而言,已经习惯了用{ },所以一般不用这种方法。)
2.把javascript代码写到一个js文件中,在模板页中引用即可。
3.使用smarty内置的literal标签,此标签内的数据将会被当做文本处理。例如
{literal}
<script language=javascript>
........
</script>
{/literal}
有时,我们需要输出定界符{ },则可以使用{ldelim}和{rdelim}标签来输出左右定界符。

本文讨论了在使用smarty框架时遇到的JS代码执行问题,解释了问题原因,并提出了三种解决方法:修改配置、引入外部JS文件、使用smarty内置的literal标签。
489

被折叠的 条评论
为什么被折叠?



