【发布时间】:2013-09-04 22:29:12
【问题描述】:
我正在尝试用纯 HTML 包装我的模板。或者在代码中:
{{expandable}}
CONTENT
{{/expandable}}
应该变成:
<div class="expandable closed">
<div class="header lowercase">
<img src="/Control/Svg?picture=EdgeBracket_Right" style="height: 35px; position: relative; top: 10px;"/>
</div>
<div class="content">
CONTENT
</div>
</div>
到目前为止我尝试过的事情:
自定义标签方法
$.views.tags("expandable", function() {
return '<div class="expandable closed"><div class="header lowercase"><img src="/Control/Svg?picture=EdgeBracket_Right" style="height: 35px; position: relative; top: 10px;"/>' +
'</div> <div class="content">' + this.tagCtx.render(content) + '</div></div>';
});
但在CONTENT 内部我无法访问我的数据。 [或者至少不是我习惯的方式。]
模板方法
我考虑了这个例子,它在技术上更接近我的需要:
{{boldp title /}}
...
$.views.tags("boldp", {
template: "<p><strong>{{:~tag.tagCtx.args[0]}}</strong></p>"
});
但如果我想环绕某些东西,我不知道该写什么而不是 ~tag.tagCtx.args[0]。
哪种方法更接近我的需要?我该如何解决剩下的问题?
【问题讨论】:
-
顺便说一句,这个问题对 JsViews 来说也很有趣。您可能也想添加该标签...?
标签: javascript templating jsrender jsviews