我想迭代 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()
最佳答案
您应该使用 Ext.XTemplate
而不是Ext.Template
Ext.XTemplate
支持<tpl>
命令。 Ext.Template
不要。
-
apply()
- 只需使用提供的数据处理模板并以字符串形式返回 HTML 片段。 -
overwrite()
- 第一个参数必须是Ext.Element
或 DOM 元素选择器。然后使用提供的数据处理模板,并将结果用作元素的新内容。
关于javascript - ExtJS 循环模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21676176/