jQuery tmpl http://api.jquery.com/jquery.tmpl/を使用しています。jQuery tmplが無効なHTMLを返す
しかし、バリデーターを使用してHTMLを検証すると、「文字xが属性id
の値に許可されていません」というエラーが表示されます。
どうすればこの問題を解決できますか?
jQuery tmpl http://api.jquery.com/jquery.tmpl/を使用しています。jQuery tmplが無効なHTMLを返す
しかし、バリデーターを使用してHTMLを検証すると、「文字xが属性id
の値に許可されていません」というエラーが表示されます。
どうすればこの問題を解決できますか?
テンプレートではなく、最終生成されたHTMLで検証テストを実行します。
たとえば、あなたのページを閲覧するときにFirebugを使用してコピーすることができます。
CDATAセクション内の場所を:XHTMLで
<script type="text/javascript">
/* <![CDATA[ */
$.tmpl('<li id="${id}">something</li>', myData)
/* ]]> */
</script>
(あなたがXHTMLとして有効と仮定)<script/>
がそのように、#P(arsed)C(haracter)DATAとして定義されます内容が解析され、エラーが発生します。 CDATAセクション内に配置すると、パーサーはそれを無視します。
'この問題をどうやって解決できますか? 'あなたのIDに' $ 'を使わないでください。 :) – Alex
@Alex:彼はidの一部ではなく、テンプレートの中で$を使う –