UPDATE Jade v0.24.0は!=
、属性の構文でこれを修正します。option(value!='<%= id %>')
<option>
オプションの値がUnderscoreJSテンプレートマーカーであるwithjadeを作成しようとしていますが、 <%= id %>
jadeがマーカーテキストをに変換しているため、機能させることができません<= id >
。
これが私のジェイドマークアップです:
script(id="my-template", type="text/template")
select(id="type")
<% _.each(deviceTypes, function(type){ %>
option(value='<%= type.id %>') <%= type.name %>
<% }) %>
私はそれがこのhtmlを生成することを期待しています:
<script id="my-template" type="text/template">
<select id='type'>
<% _.each(deviceTypes, function(type){ %>
<option value="<%= type.id %>"> <%= type.name %> </option>
<% }) %>
</select>
</script>
しかし、代わりに私が得るのはこれです:
<script id="my-template" type="text/template">
<select id='type'>
<% _.each(deviceTypes, function(type){ %>
<option value="<%= type.id %>"> <%= type.name %> </option>
<% }) %>
</select>
</script>
出力の行の非常に微妙な違いに注意してください<option>
...value
オプションの属性はHTMLエンコードされています。
Jadeがこの値をHTMLエンコードしないようにするにはどうすればよいですか?オプションのテキストと同じように、リテラル値を生成するために必要です。