在 jquery 模板中定义变量?
我有一个 jquery 模板,我必须将一些变量组合在一起,如下所示:
{{= year}}-{{= month}}-{{= day}}-{{= hour}}
我来自 jqote 模板,您可以在模板中使用 javascript。这在 jquery 模板中可能吗?我在这个问题上找不到任何帮助。谢谢。
另外,我使用了奇怪的语法,因为 groovy 不喜欢 ${}。
<script id="mainTemplate" type="text/x-jquery-tmpl">
<ul>
{{each(i, wrapSpec) data}}
<li><a href="#pkgLineTabs_{{= wrapSpec.wrapSpecId}}" id="{{= wrapSpecId}}">{{= wrapSpec.wrapSpec2.pkgLineId.pkgLineTree.treeId.name}} {{= wrapSpec.shortname}} </a></li>
{{/each}}
</ul>
{{each(i, wrapSpec) data}}
<div id="pkgLineTabs_{{= wrapSpec.wrapSpecId}}" style="font-size:12px" class="reportTable display {{= wrapSpec.wrapSpec2.pkgLineId.hash}}" title="{{= wrapSpec.wrapSpec2.pkgLineId.hash}}" >
{{tmpl(wrapSpec.report) "#dayTemplate"}}
</div>
{{/each}}
在 jqote 中,我只能说 var pkgLineId = wrapSpec.wrapSpec2.pkgLineId。
因此,我可以不说wrapspec.wrapSpec2.pkgLineId.hash,而是直接输入pkgLineId.hash。
I have a jquery template where I have to combine some variables together like so:
{{= year}}-{{= month}}-{{= day}}-{{= hour}}
I'm coming from jqote templates where you can just use javascript within the template. Is this possible within jquery templating? I can't find any help on this issue. Thanks.
Also I'm using the weird syntax because groovy doesn't like ${}.
<script id="mainTemplate" type="text/x-jquery-tmpl">
<ul>
{{each(i, wrapSpec) data}}
<li><a href="#pkgLineTabs_{{= wrapSpec.wrapSpecId}}" id="{{= wrapSpecId}}">{{= wrapSpec.wrapSpec2.pkgLineId.pkgLineTree.treeId.name}} {{= wrapSpec.shortname}} </a></li>
{{/each}}
</ul>
{{each(i, wrapSpec) data}}
<div id="pkgLineTabs_{{= wrapSpec.wrapSpecId}}" style="font-size:12px" class="reportTable display {{= wrapSpec.wrapSpec2.pkgLineId.hash}}" title="{{= wrapSpec.wrapSpec2.pkgLineId.hash}}" >
{{tmpl(wrapSpec.report) "#dayTemplate"}}
</div>
{{/each}}
In jqote I could just say var pkgLineId = wrapSpec.wrapSpec2.pkgLineId.
So instead of saying wrapspec.wrapSpec2.pkgLineId.hash I could just put pkgLineId.hash.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 ${ } 模板标签将函数或表达式嵌入 jQuery 模板中。
http://api.jquery.com/template-tag-equal/
您可以通过 window 对象将全局变量传递给模板:
或者:
这是一个 jsfiddle,可以完成我认为您想要做的事情: http://jsfiddle.net/GTjXz/1/
编辑:jsfiddle 在模板中的 $item 对象上动态声明新属性: net/GTjXz/2/" rel="nofollow">http://jsfiddle.net/GTjXz/2/
You can use the ${ } Template tag to embed a function or expression in a jQuery template.
http://api.jquery.com/template-tag-equal/
You can pass global variables to the template by way of the window object:
Or:
Here is a jsfiddle that accomplishes what I think you are trying to do: http://jsfiddle.net/GTjXz/1/
EDIT: jsfiddle which dynamically declares new properties on the $item object in the template: http://jsfiddle.net/GTjXz/2/