2011-09-29 46 views
1

我使用EE2.2以及jQuery和jQuery模板插件。在我的模板中,我擁有大量的花括號,這是jQuery模板如何工作的一部分。問題在於EE不區分JavaScript花括號和EE標籤,這些標籤也包含在大括號中。 EE正在將大括號解釋爲EE標籤,因此模板無法工作。由於這些花括號在腳本標籤內,因此我會假定EE會將它們計數爲javascript和非EE標籤相關的。我怎麼能告訴EE,這些不是EE標籤。有沒有解決這個問題的方法。ExpressionEnine將jQuery花括號解釋爲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> 

回答

3

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> 
1

這是一個常見的問題有been answered before。簡單地說:

隨着您的使用,第二個選項可能是最好的解決方案。

+0

謝謝。我將protect_javascript設置爲y,它起作用。將protect_javascript設置爲n的目的是什麼,因爲它最初是 – Pinkie

+1

因爲通常你想在你的javascript中使用EE變量。 –

+0

當'$ config ['protect_javascript'] = y;'時,它會阻止ExpressionEngine解析器處理'

  • 11. preg_replace和花括號
  • 12. C++ {*此}花括號
  • 13. 替換方括號和花括號圓括號中的JavaScript或jQuery的
  • 14. 了StyleCop:括號內的花括號
  • 15. 逃離大括號的花括號
  • 16. 括號標籤顏色
  • 17. 將無符號整數解釋爲在擴展時簽名
  • 18. Visual Studio標籤中括號/引號?
  • 19. innerHTML不解釋HTML標籤
  • 20. RichTextBox誤解釋標籤
  • 21. 如果沒有花括號
  • 22. Ansible逃脫雙花括號
  • 23. Ansible逃避花括號
  • 24. 的javascript $後面花括號
  • 25. Webstorm中的花括號
  • 26. 花括號拋出錯誤
  • 27. 花括號默認佈局
  • 28. IDE預計花括號
  • 29. SVG水平花括號
  • 30. 用XML轉義花括號