我正在尝试使用 jQuery.tmpl 构建一个复选框列表它会列出一个带有复选框的项目数组,我想以参数方式检查其中一些复选框......
模板代码为:
<ul>
{{each(i,val) Values}}
<li>
<input type="checkbox" {{if $.inArray(i, Default) != -1}} checked="checked"{{/if}}>
<em>${val}</em>
</li>
{{/each}}
</ul>
和模板定义:
<script type="text/javascript">
$(document).ready(function() {
$('#tpl_selector').tmpl({
Default: [1,2],
Values: {
1: 'Item 1',
2: 'Item 2',
3: 'Item 3'
}
}).appendTo('#area');
});
</script>
因此,在这种情况下应检查第 1 项和第 2 项。列表创建没有问题,但{{if $.inArray(i, Default) != -1}} checked="checked"{{/if}}
部分不起作用。
但是,当我用数字替换 'i' 时,它可以工作:
{{if $.inArray(1, Default) != -1}} checked="checked"{{/if}}
我根本没有任何意义......你有什么建议吗?
填充复选框的另一个逻辑也可以,就像我不知道 smt. 就像渲染完成后的回调函数,否则......