Ext学习之5_XTemplate2

Ext.namespace("com.deng");
/**
 * XTemplate用于定义一个模板,并将值提供给{}占位符,XTemplate也能和Ext.util.Format配合,将填充
 * 的值进行格式化,得到用户想要的任何效果
 * 基本格式:{index|name:method(params)}
 * index: 索引
 * name: json对象的属性名
 * method:Ext.util.Format类的方法名
 * params:Ext.util.Format类的方法参数
 */
/**
Ext.onReady(function(){
	var xt = new Ext.XTemplate(
			"<table border={b} width={w}>",
			   "<tr>",
		            '<td>{v1:date("Y年m月d日H时i分s秒")}</td>',
		            "<td>{v2:lowercase}</td>",
		            "<td>{v3:ellipsis(5)}</td>",
		      "<tr>",  
		 "</table>"
	);

	xt.append("xt",{b:1,w:300,v1:new Date(),v2:"CEL2",v3:"这是一段很长的字符串"});
	xt.compile();
});
*/
/**
 * 备注:
 *   输出日期时如果使用"<td>{v1:date('Y年m月d日H时i分s秒')}</td>",即双引号在外面,单引号在内会报错
 */

/**
 * 在显示性别时根据不同的性别显示不同图片
 */
Ext.onReady(function(){
	var xt2 = new Ext.XTemplate(
			"您的性别是:{sex:this.sexRender}"
			);
	xt2.sexRender = function(value){
		return value == "男"?"<img src='../_images/edit.gif'>":"<img src='../_images/refresh.gif'>"
	};
	xt2.append("xt",{sex:"男"});
	xt2.compile();
});
/**
 * this.sexRender中的this是指xt2对象,所有sexRender必须定义在xt2上,否则Ext会从fm对象中索取方法,fm
 * 是Ext自己定义的对象
 */
 

你可能感兴趣的:(json,ext)