Smarty中{literal}的使用详解(ecshop)
如何在文件里加入JS代码,如果按一般平常添加方法,会出错,解决的方法:
把script套在{literal}{/literal}之间试试看,例如:
{literal}
{/literal}
--------------------------------------------------------------------------------------------------
看到好多ecshop的模板文件中 都有{literal}{/literal} 标签的影子,该标签一般都是把js 包含起来,一直不知道是什么作用,或者这样写有什么含义。找了半天才现在,他的真真作用,还是学习不到位啊。
literal 标签是在smarty中的存在的,这就能理解为什么会出现在ecshop中了。smarty会把所有的{}都当成是自己的程序,我们在js中如果想定义一个函数的话就会用到{} 。smarty一编译就把js中定义函数的{}当做自己的东西来编译。这样就可能出现问题了。为了解决这个问题,于是诞生了{literal}标签。
也可以这样理解:iteral 标签区域内的数据将被当作文本处理,此时模板将忽略其内部的所有字符信息. 该特性用于显示有可能包含大括号等字符信息的 javascript 脚本. 当这些信息处于 {literal}{/literal} 标签中时,模板引擎将不分析它们,而直接显示
转: http://blog.sina.com.cn/s/blog_13881dd5d0102vsj0.html