在预prestashop模板变量中,$js_def
应该包含带有addJsDef
的预定义的全局JavaScript变量。
但是,所发生的情况是,在输出源代码中只显示字符串js_def
,而不是带有变量定义的脚本。
PS:这是分享知识型问答。
发布于 2015-11-19 18:35:42
使用$js_def
模板变量显示的定义实际上不在$js_def
变量中。它只包含字符串js_def
。
那么它是如何显示的呢?
这些定义由js_def
字符串在<head>
中的自动替换来显示。
可能的原因和解决办法:
原因
因为它是通过在输出源代码上替换(如果在输出时发生错误时发生)来完成的,所以替换不会发生!
如果在某些输出模板()文件中使用了未定义变量或索引,甚至footer.tpl
错误也可能导致<head>
中的js_def
字符串不替换,甚至可能发生这种情况。
解决方案
这个解决方案很容易检查源代码中的任何错误并修复它们。一旦输出的HTML源代码是无错误的,那么js_def
现在被正确替换/显示的几率是99.99%。
https://stackoverflow.com/questions/33811774
复制相似问题