Javascript 防止模板循环内的标记被多次输出?
我正在尝试创建一个表,其中包含一个Javascript 防止模板循环内的标记被多次输出?,javascript,underscore.js,Javascript,Underscore.js,我正在尝试创建一个表,其中包含一个id单元格,该单元格应基于sessions数组长度跨3列,因为id单元格位于循环内,当我只希望它具有一次功能时,它会获得3次输出。是否可以在模板中设置一些内容来执行此操作 JS <table> <tbody class="js-output"> <script type="text/html" id="tmpl"> <% _.each(sessions, function(
id
单元格,该单元格应基于sessions
数组长度跨3列,因为id
单元格位于循环内,当我只希望它具有一次功能时,它会获得3次输出。是否可以在模板中设置一些内容来执行此操作
JS
<table>
<tbody class="js-output">
<script type="text/html" id="tmpl">
<% _.each(sessions, function(session) { %>
<tr>
<td rowspan="<%- session.length %>"><%- id %></td>
<td><%- session %></td>
<td><select name="" id=""></select></td>
</tr>
<% }) %>
</script>
</tbody>
</table>
小提琴:
硬编码布局:这里有一个模板,它分别处理第一个sessions元素及其其余元素
<table>
<tbody class="js-output">
<script type="text/html" id="tmpl">
<tr>
<td rowspan="<%- sessions.length %>"><%- id %></td>
<td><%- _.first(sessions) %></td>
<td><select name="" id=""></select></td>
</tr>
<% _.each(_.rest(sessions), function(session) { %>
<tr>
<td><%- session %></td>
<td><select name="" id=""></select></td>
</tr>
<% }) %>
</script>
</tbody>
</table>
Fiddle:这里有一个模板,它分别处理第一个sessions元素及其其余元素
<table>
<tbody class="js-output">
<script type="text/html" id="tmpl">
<tr>
<td rowspan="<%- sessions.length %>"><%- id %></td>
<td><%- _.first(sessions) %></td>
<td><select name="" id=""></select></td>
</tr>
<% _.each(_.rest(sessions), function(session) { %>
<tr>
<td><%- session %></td>
<td><select name="" id=""></select></td>
</tr>
<% }) %>
</script>
</tbody>
</table>
小提琴:我使用了
索引和if
结构,如下所示:
<table>
<tbody class="js-output">
<script type="text/html" id="tmpl">
<% _.each(sessions, function(session,i) { %>
<tr>
<% if(i!=0){ %>
<td><%- session %></td>
<td><select name="" id=""></select></td> <%}%>
<% if(i==0){%> <td rowspan="<%- sessions.length %>"><%- id %></td>
<td><%- session %></td>
<td><select name="" id=""></select></td><%}%>
</tr>
<% }) %>
</script>
</tbody>
jsIDLE:我使用了索引和if
结构,如下所示:
<table>
<tbody class="js-output">
<script type="text/html" id="tmpl">
<% _.each(sessions, function(session,i) { %>
<tr>
<% if(i!=0){ %>
<td><%- session %></td>
<td><select name="" id=""></select></td> <%}%>
<% if(i==0){%> <td rowspan="<%- sessions.length %>"><%- id %></td>
<td><%- session %></td>
<td><select name="" id=""></select></td><%}%>
</tr>
<% }) %>
</script>
</tbody>
jsFIDLE:我不太明白这个问题,但你在找这样的东西吗:?这里是一个硬编码的示例布局,说明我需要实现什么,为什么我需要这样做?也许是这样的:使用索引和执行如果..否则
我不太明白这个问题,但是你在找这样的东西吗:?这是一个硬编码的示例布局,说明我需要实现什么,为什么我需要这样做?也许是这样的:使用索引
并执行if..else