我把聪明的代码放在js/jquery函数中,但是不起作用,我看到了空白页面!如何解决这个问题?
{literal}
<script type="text/javascript">
jQuery(document).ready(function($){
$("#IsGroupGallery").click(function() {
{literal} {if $photos} $.lightbox(["{"\", \""|implode:$photos}"]); {/if}{/literal}
return false;
});
});
</script>
{/literal}发布于 2012-08-12 22:42:31
您内部的文本标记是向后的,并且您试图在{文本}标记中嵌套额外的文本(这显然是行不通的,因为{文本}告诉Smarty保持内容不变。)它可能应该看起来像这样:
{literal}
<script type="text/javascript">
jQuery(document).ready(function($){
$("#lbgallery").click(function() {
{/literal} {if $photos} $.lightbox(["{"\", \""|implode:$photos}"]); {/if}{literal}
return false;
});
});
</script>
{/literal}请注意,外部文本标记内的两个文本标记已颠倒。您需要首先结束文本,然后重新启动它,否则内部{ literal }标记的内容也将被视为文本,而不是计算-这对于您正在尝试做的事情没有任何意义:)
发布于 2012-08-12 22:42:27
提示: Smarty3将{ if解析为文字字符串(“自动文字”)。因此,只要{被空格包围,它就会被Smarty3忽略。
如果这不管用,或者你被Smarty2卡住了,请注意{literal}标签是不嵌套的。
{literal}
<script type="text/javascript">
jQuery(document).ready(function($){
$("#lbgallery").click(function() {
{/literal}
{if $photos} $.lightbox(["{"\", \""|implode:$photos}"]); {/if}
{literal}
return false;
});
});
</script>
{/literal}https://stackoverflow.com/questions/11922988
复制相似问题