2011-05-10 64 views
3

我已經證明文件以及下面的doctype:jquery.tmpl模板破XHTML驗證

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru"> 

模板聲明如下:

<script id="tmpl-periods-options" type="text/x-jquery-tmpl"> 
     {{each plans_array}} 
      <label><input type="radio" value="${$value.id}" name="pf-periods" {{if $value.selected}}checked="checked" {{/if}} />${$value.title}</label> 
     {{/each}}   
    </script> 

http://validator.w3.org/顯示我的HTML代碼中的錯誤被聲明裏面有<script>標籤。

有沒有解決方法?

回答

3

正常的JavaScript技術不起作用,因爲這不是JavaScript;只需將模板包裝在//<![CDATA[ ... //]]>//<!-- ... //-->中就會導致更嚴重的問題。

正如this blog post建議的那樣,好像最好的選擇是使用HTML 5或將模板放在外部文件中幷包含它。

$(document).ready(function() { 
    $.get('template.html', function(content) { 
     $.template('template name', content); 
    }); 
}); 
+0

是的,我試過CDATA在第一位,沒有運氣 - 最終']]>'成爲模板的一部分(它可以被sripped雖然)。 – artvolk 2011-05-25 14:40:21