Summary
摘要:如何利用模板(Templates)的格式化功能和加入您自定义格式的函数
Author:
Aaron Conran
Translater:
Frank Cheung
Published:
May 16, 2007
本教程基于Ext的模板引擎展开详述,亦是对 Shea Frederick“”教程一文的补充。假设读者已经初步接触过模板(Templates),和格式化函数的基本语法为“{VARIABLE:[(可选的参数)]}”。
正式开始
假设我们打算从一变量中,
打印出内容,但当中的内容有可能会占用过多的空间。对于这种情况,通过的办法是对该内容截取,限制在50个英文字符内,然后做成连接让用户点击后观察全
文。函数"ellipsis"
的功能正是这样,可限制在任意字符数内。另外,在截取字符串的后面,该函数还会加上“...“,以示实际的内容还有更多。
一个模板如下示:
var myTpl = new Ext.Template('<div>{content:ellipsis(50)}<br/><a href="{moreLink}">Read More</a></div>');
通过处理,其中有47个字符是属于内容本身的,另外三个字符是”...“,一共50个字符。
这是一份格式化函数的列表,可用于模板:
- ellipsis(length) - 对大于指定长度部分的字符串,进行裁剪,增加省略号(“...”)的显示。适用于只显示前N位的字符,然后提供详细页面的场合。
- undef -检查一个值是否为underfined,如果是的转换为空值
- htmlEncode - 转换(&, <, >, and ') 字符
- trim - 对一段文本的前后多余的空格裁剪
- substr(start, length) - 返回一个从指定位置开始的指定长度的子字符串。
- lowercase - 返回一个字符串,该字符串中的字母被转换为小写字母。
- uppercase - 返回一个字符串,该字符串中的字母被转换为大写字母。
- capitalize - 返回一个字符串,该字符串中的第一个字母转化为大写字母,剩余的为小写。
- usMoney - 格式化数字到美元货币。如:$10.97
- date[(format)] - 将一个日期解析成为一个特定格式模式的日期。如日期字符串不输入,默认为“月/日/年”
- stripTags - 剥去变量的所有HTML标签
您亦可以创建自定义的格式化函数,具体做法是,在模板的实例上加入新的方法,继而在模板上调用,格式化的函数应该像这样的:"{VARIABLE:this.}"
这是一个简单是实例,对模板实例加入一个"yesNoFormat "的新函数。yesNoFormat 与ColdFusion转换”truthy“函数相类似 ,如果是真的输出"Yes",假的输出”No“。
var testCustomTpl = new Ext.Template('<div>User: {username} IsRevoked: {revoked:this.yesNoFormat}</div>');
testCustomTpl.yesNoFormat = function(value) {
return value ? 'Yes' : 'No';
};
testCustomTpl.append(document.body, {username: 'aconran', revoked: 1});
分享到:
相关推荐
Ext的Template支持通过传入json数据的方式进行模板替换。 API中有这样一段示例: 代码如下:var t = new Ext.Template( ‘”{id}”>’, ‘”{cls}”>{name:trim} {value:ellipsis(10)}’, ‘’ ); t.append...
`EXT核心API详解(四)-Ext.DomQuery DomHelper Template.txt`涵盖了查询DOM元素的`Ext.DomQuery`(类似于jQuery的selector),动态创建和操作DOM的`DomHelper`,以及用于数据绑定的`Template`类。这些工具使你能更加...
本人觉得Ext.Template和Ext.XTemplate模板类非常类似.Net的母板页,或者非常类似于JSP技术中jstl标准标签和EL表达式功能;但是它是一个客户端的技术。 阅读目标:需要使用模板方式来开发web应用的人员。 前置条件:...
"EXT核心API详解(四)-Ext.DomQuery DomHelper Template.txt"介绍了Ext.DomQuery,这是一个高效的DOM选择器引擎,类似于jQuery的$.selector。DomHelper则是用于创建和操作DOM结构的工具,而Template则是用于动态生成...
"EXT核心API详解(四)-Ext.DomQuery DomHelper Template.txt"介绍了Ext.DomQuery,这是一个强大的CSS选择器引擎,类似于jQuery的选择器,用于高效地选取DOM元素。DomHelper则是一个便捷的DOM元素构建工具,可以生成...
9、Ext.DomHelper类 …………………… 14 10、Ext.Template类 …………………… 14 11、Ext.EventManager类 ……………… 15 12、Ext.EventObject类 ………………… 15 13、Ext.CompositeElement类 ………… 16 14、...
6. **视图模板(Template)**:EXT提供了丰富的模板机制,可以用于动态生成HTML,展示数据。在"EXT后台经典实例"中,这些模板可能用于自定义数据的显示格式。 7. **数据绑定**:EXT支持双向数据绑定,使得UI组件的...
Ext的基础知识点包括元素获取方法Ext.get、动态生成HTML的DomHelper和Template、以及数据处理相关的Ext.data命名空间中的proxy和reader系列。Ext对JSON格式的支持也很到位,提供了方便的API来加载和解析JSON数据。 ...
5. **EXT核心API详解(三)-Ext.DomQuery DomHelper Template**:这部分主要涉及DOM查询、DOM辅助器和模板。`Ext.DomQuery`(简称`$`)类似于jQuery的`select`,用于高效地选取DOM节点,支持XPath和CSS选择器。`Ext....
1.2. 看看ext-1.1.1的文档 1.3. 看看ext-2.0的文档 1.4. 为什么有的例子必须放在服务器上才能看到效果? 1.5. 为什么自己按照例子写的代码,显示出来总找不到图片 1.6. 我们还需要什么? 1.7. 入门之前,都看hello...
1.2. 看看ext-2.0.2的文档 1.3. 为什么有的例子必须放在服务器上才能看到效果? 1.4. 为什么自己按照例子写的代码,显示出来总找不到图片 1.5. 我们还需要什么? 1.6. 入门之前,都看helloworld。 1.6.1. 直接使用...
此案例主要涉及到了自定义 GridView 的 `renderHeaders` 方法来达到单元格合并的目的,并且还涉及了模板(Template)的使用、ColumnModel 的配置以及数据绑定等关键概念。 ### 一、Ext JS Grid 概览 Ext JS 是一个...
7. **模板(Template)**:对于下拉树的展示,可能需要自定义模板来决定节点在下拉列表中的显示方式。 8. **API调用**:EXT JS提供了丰富的API接口,如expandAll()用于展开所有节点,collapseAll()用于折叠所有节点...
为了不干扰系统自带的布局,我们可以创建一个扩展文件liferay-layout-templates-ext.xml,并在这个文件中声明我们的1_2_3_2_columns.tpl布局。例如: ```xml <layout-template-key>1_2_3_2_columns</layout-...
2. **模板(Template)**:为了显示月份列表,可能需要定义一个HTML模板,该模板包含一年中的12个月份,每个月份作为一个可选的元素。 3. **事件监听**:当用户点击某个月份时,需要添加监听器来捕获这一事件,并...
EXT 核心 API 详解(四) - Ext.DomQuery/DomHelper/Template EXT JS 是一个专注于构建前端用户界面的JavaScript框架,它独立于后台技术,主要利用Ajax技术实现丰富的交互效果。本文将深入探讨EXT JS的核心API,特别...
"template": "default" } ``` 四、使用ext-doc生成文档 有了配置文件后,只需运行以下命令即可生成文档: ``` ext-doc ``` 这将在指定的输出目录下创建一个HTML文档结构,包含了解析后的JSDoc注释和代码结构。 ...