如何在ASP.Net MVC视图中使用下划线/ javascript模板

Smi*_*ith 3 asp.net-mvc underscore.js underscore.js-templating

我只是想知道你如何在.aspx视图中使用下划线模板,因为下划线使用的<%=%>标签被.aspx渲染引擎拾取并给我错误.

例如:

<script type="text/template" id="my-template">
  <span class="event" title="<%= description %>">
      <%= title %>
  </span>
</script>
Run Code Online (Sandbox Code Playgroud)

这个模板给了我一个错误,因为.aspx渲染引擎认为我正在尝试将这些东西绑定到Model.

谢谢.

mu *_*ort 10

精细手册:

模板 _.template(templateString, [data], [settings])
[...]
如果ERB样式的分隔符不是您的茶,您可以更改Underscore的模板设置以使用不同的符号来设置插值代码.定义一个插值正则表达式以匹配应该逐字插入的表达式,一个转义正则表达式匹配应该在HTML转义后插入的表达式,以及一个评估正则表达式来匹配应该在不插入结果字符串的情况下进行评估的表达式.

因此,如果默认<%=...%>,<%-...%><%...%>分隔符不适合你的工作,那么你可以使用不同的人以简单的结构变化.例如,如果您想使用{%...%}而不是<%...%>,则在underscore.js加载之后和使用之前执行此操作_.template:

_.templateSettings = {
    interpolate: /\{%=(.+?)%\}/g,
    escape:      /\{%-(.+?)%\}/g,
    evaluate:    /\{%(.+?)%\}/g
};
Run Code Online (Sandbox Code Playgroud)

演示:http://jsfiddle.net/ambiguous/TfB5M/