gpt4 book ai didi

jquery - Expressionengine 将 jQuery 花括号解释为 EE 标签

转载 作者:行者123 更新时间:2023-12-01 06:57:21 26 4
gpt4 key购买 nike

我正在使用 EE2.2 以及 jQuery 和 jQuery 模板插件。在我的模板中,我分配了花括号,这是 jQuery 模板工作原理的一部分。问题是 EE 没有区分 JavaScript 大括号和同样包含在大括号中的 EE 标签。 EE 将大括号解释为 EE 标签,因此模板无法正常工作。由于这些大括号位于 script 标记内,因此我假设 EE 会将它们视为 javascript 和非 EE 标记相关。我如何告诉 EE 这些不是 EE 标签。有解决这个问题的方法吗?

<script id="template-download" type="text/x-jquery-tmpl">
<tr class="template-download{{if error}} ui-state-error{{/if}}">
{{if error}}
<td></td>
<td class="name">${name}</td>
<td class="size">${sizef}</td>
<td class="error" colspan="2">Error:
{{if error === 1}}File exceeds upload_max_filesize (php.ini directive)
{{else error === 2}}File exceeds MAX_FILE_SIZE (HTML form directive)
{{else}}${error}
{{/if}}
</td>
{{else}}
<td class="preview">
.....
</script>

最佳答案

ExpressionEngine隐藏了什么$config['protect_javascript']实际上呢?最好通过一个例子来解释——请允许我来说明。

给出以下代码示例,其中 $config['protect_javascript'] = 'y';高级条件将被完全忽略:

<script>
{if username == "admin"}
Welcome, {username}!
{if:elseif member_id == "2"}
Welcome, {screen_name}!
{if:else}
Welcome, Guest!
{/if}
</script>

这将产生以下输出:

<script>
Welcome, admin!

Welcome, Administrator!

Welcome, Guest!
</script>

然而,当 $config['protect_javascript'] = 'n';上面的相同代码片段将允许评估高级条件并生成:

<script>
Welcome, admin!
</script>

如您所见,区别在于高级条件是否在 JavaScript 代码块中计算

Simple conditionalstemplate tags始终在 <script> 中进行评估标签,无论 $config['protect_javascript']设置 — 只要确保放置大括号 {}在不同的行上!

<script>
// Simple Conditionals Are Unaffected and Always Work
{if segment_2 != ""}
{redirect="404"}
{/if}
</script>

关于jquery - Expressionengine 将 jQuery 花括号解释为 EE 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7591369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com