我有一个用javascript(JSon)对象表示的表。我用Dust来填充表格。
每个偶数行应该有data-editable="true"
,每个奇数行应该有data-editable="false"
这是我尝试的内容:
{#rows}
<tr>
{#rows.values}
<td data-header="{header}" data-editable="{#rows}{@@math key=$idx method=" mod" operand=2}
{@@eq value=0}
true
{:else}
false
{ />eq}
{/math}{/rows}">
{value}
</td>
{/rows.values}
</tr>
{/rows}
但它没有用。
javascript对象如下所示:
var data = {
'headers': ['a', 'b', 'c']
, 'rows': [
{
'values': [
{ 'header': 'a', 'value': '1' }
, { 'header': 'b', 'value': '2' }
, { 'header' : 'c', 'value' : '3' }
]
}
, { 'values': [
{ 'header': 'a', 'value': '4' }
, { 'header': 'b', 'value': '5' }
, { 'header' : 'c', 'value' : '6' }
]
}
, {
'values': [
{ 'header': 'a', 'value': '1' }
, { 'header': 'b', 'value': '2' }
, { 'header': 'c', 'value': '3' }
]
}
, {
'values': [
{ 'header': 'Prénom', 'value': 'Roger' }
, { 'header': 'b', 'value': '2' }
, { 'header': 'c', 'value': '3' }
]
}
]
}
注意:@@是ASP.Net转义@
答案 0 :(得分:2)
您可以将变量传递到Dust部分,以将它们范围扩展到该部分。因此,解决方案是传递父{†$idx
,以便您可以在嵌套部分中使用它。
此代码经过测试可用。
{#rows}
<tr>
{#.values rowIndex=$idx} {! Here I am passing "rowIndex" into this section !}
<td data-header="{header}" data-editable="{@math key=rowIndex method="mod" operand=2}{@eq value=0}true{:else}false{/eq}{/math}">
{value}
</td>
{/.values}
</tr>
{/rows}