作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
更新 Jade v0.24.0 通过 !=
修复了此问题属性的语法。 option(value!='<%= id %>')
我正在尝试构建一个 <option>
与jade,其中选项的值是UnderscoreJS模板标记:<%= id %>
但我无法让它工作,因为 jade 正在将我的标记文本转换为 <= id >
.
这是我的 Jade 标记:
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 编码?我需要它来生成文字值,就像处理选项文本一样。
最佳答案
Derick 已经提到 Jade 在更新中添加了新的 unescape HTML 编码功能,但我想为可能不认识的人添加一些附录。
- var html = "<script></script>"
| !{html} <-- Escaped
| #{html} <-- Encoded
关于templates - 如何让Jade停止HTML编码元素属性,并产生一个文字字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10111232/
我是一名优秀的程序员,十分优秀!