例如,在此代码中:
<div id="user_collection_requests-${id} table-cell" class="user_collection_requests">
{{if requests}}
{{each(i, user) requests}}
<div id="user_collection_request-${id}-${user.id}" ...
{{/each}}
{{/if}}
</div>
第一个${id}
打印外部对象的id
属性,但第二个${id}
打印的内容与${user.id}
相同。我想从id
块中抓取外部范围的{{each}}
。
这可能吗?或者我必须确定命名变量,以便不会发生这样的碰撞?
答案 0 :(得分:1)
您可以在{{each}}块
之外声明变量${( $data.localVariable = $id ),''}
并在以后访问
${localVariable}
答案 1 :(得分:0)
<script id="template" type="text/x-jquery-tmpl">
<div id="user_collection_requests-${id} table-cell" class="user_collection_requests">
{{if user}}
{{each user}}
<div id="user_collection_request-${$data.id}-${id}"></div>
{{/each}}
{{/if}}
</div>
</script>
答案 2 :(得分:0)
简单来说就是
使用${( $data.UserId = Id ),''}
,然后将each
内的内容用作UserId
这是我在其中一个脚本中使用的代码
<script id="templateFolderTop" type="text/html">
<li>
${( $data.ParentTagSlug = Tag.replace(/[^a-zA-Z0-9_]/g,'-') ),''}
<span class="CAPS">
<a id="${ParentTagSlug}" onclick="_NewsManager.FolderSubCall(${Id})"></a>
<a href="#${ParentTagSlug}" class="top_menu_href" >${Tag}</a>
</span>
{{if ChildList.length}}
${( $data.ParentTag = ParentTagSlug ),''}
<div class="dropdown_2columns">
<div class="col_1 firstcolumn">
<ul>
{{each ChildList}}
${( $data.TagSlug = Tag.replace(/[^a-zA-Z0-9_]/g,'-') ),''}
<li>
<a id="${ParentTag}-${TagSlug}" onclick="_NewsManager.NewsListCall(${Id})"></a>
<a href="#${ParentTag}-${TagSlug}" >${Tag}</a>
</li>
{{/each}}
</ul>
</div>
</div>
{{/if}}
</li>
</script>
答案 3 :(得分:-1)
您需要使用jquery的父方法
http://api.jquery.com/parent/
.parent()为您提供parent属性