我正在使用backbone.js 开发一个html5 应用程序。html 的格式包括列表元素。元素的标签li
来自网络服务。我正在li
动态填充元素。
我正在收集一个集合中的所有标签并发送到模板。现在我想li
在元素中动态插入每 2 个元素。ul
我怎样才能做到这一点?
我的 html 看起来像
<div class="auto_data">
<li>
<label style="color:white">Name<sup>*</sup></label><input type="text">
</li>
<li>
<label style="color:white">Age<sup>*</sup></label><input type="text">
</li>
<li><label style="color:white">Gender<sup>*</sup></label><input type="text">
</li>
<li>
<label style="color:white">salutation<sup>*</sup></label><input type="text">
</li>
</div>
现在我想为每两个 li 元素插入 ul 元素
<ul>
<li>....</li>
<li>....</li>
</ul>
现在我在我看来像这样写
_.each(this.questionReferenceCollection.models,function(model){
uiControl=model.get('UIControlType');
if(i==0){
$('.auto_data',self.el).append('<ul>');
}
i++;
$('.auto_data',self.el).append(new questions({
model:model,
controlType:uiControl
}).render().el);/* this will render li template */
if(i==2){
$('.auto_data',self.el).append('</ul>');
i=0;
}
});
但是因为异步调用,
结果是
<ul></ul>
<li>...</li>
<li>...</li>
<ul></ul>
<li>...</li>
<li>...</li>
<li>...</li>
我想
<ul>
<li>..</li>
<li>..</li>
</ul>
请给我建议。