我想在ExtJS模板中遍历数组,但迭代不会发生。
var template = '<span style="margin-left :0%;display:inline">|</span><tpl for="."><tpl for="pipe"><span style="margin-left :14%;display:inline">{.}|</span></tpl></tpl>';
var data = {count : '6',pipe : ['1','2','3','4','5','6']};
var tpl = new Ext.Template(template);
template = tpl.apply(data);
// append template to dom
我使用.apply()
将数据应用到模板中(检索 count 对象),是否需要.overwrite
之类的东西进行迭代并将新元素插入到模板中?我不明白.apply()
和.overwrite()
答案 0 :(得分:4)
您应该使用Ext.XTemplate
代替Ext.Template
Ext.XTemplate
支持<tpl>
个命令。 Ext.Template
没有。
apply()
- 只处理提供数据的模板,并将HTML片段作为字符串返回。overwrite()
- 第一个参数必须是Ext.Element
或DOM元素选择器。然后使用提供的数据处理模板,并将结果用作元素的新内容。