ExtJs 常用小技巧备忘录
1. ExtJs 给fieldLabel与fieldInput添加样式{给Input标签加入图标}http://www.w3school.com.cn/cssref/pr_background.asp 设置元素背景
Ext.create("Ext.form.TextField", {
renderTo: Ext.getBody(),
fieldLabel: '用户名',
labelStyle: 'color:green;',
fieldStyle: 'background: url(user.png)left center no-repeat;padding-left:20px;'
});
2. Ext.XTemplate在模板中编写自定义函数并且可以取得计算结果,自定义的代码放在{% ... %}块当中
getInnerTpl: function() {
return '{%var value = this.field.getRawValue().replace(/([.?*+^$[\\]\\\\(){}|-])/g, "\\\\$1");%}' +
'{[values.title.replace(new RegExp(value, "i"), function(m) {return "<b>" + m + "</b>";})]}';
}
3. Ext.form.field.Text使用正则表达式控制键盘输入与数据验证
Ext.create('Ext.form.Panel', {
width: 300,
renderTo: Ext.getBody(),
items: [{
xtype: 'textfield',
name: 'name',
fieldLabel: 'Name',
maskRe: /[\d\-]/, 控制键盘输入
regex: /^\d{3}-\d{3}-\d{4}$/, 数据验证
regexText: 'Must be in the format xxx-xxx-xxxx' 提示信息
}]
});
4. Ext.util.Format工具类
Ext.util.Format.ellipsis(stringValue, 15) //截取字符串 添加省略号...
Ext.util.Format.fileSize(filesize)//将数字转换成文件大小
Ext.util.Format.date(date, "Y-m-d")//格式化日期
5. 将Ext组件渲染到XTemplate当中
Ext.define('MyComponent', {
extend: 'Ext.container.Container',
initComponent: function() {
var me = this,
// just create a textfield and do not add it to any component
text = Ext.create('Ext.form.field.Text');
var mainTpl = new Ext.XTemplate("<div>{[this.renderUserInfo()]}</div>", {
renderUserInfo: function() {
return '<ul>' +
'<li class="custom-text-field"></li>' +
'</ul>';
}
}
);
me.html = mainTpl.apply();
// postpone text field rendering
me.on('render', function() {
// render text field to the <li class=".custom-text-field"></li>
text.render(me.getEl().down('.custom-text-field'));
});
this.callParent();
}
});
Ext.getBody().setHTML('');
Ext.create('MyComponent', {
renderTo: Ext.getBody()
});
6. XTemplate当中给HTML元素定义事件
new Ext.XTemplate(
'<p><b>标题:</b> {biaoti}</p>',
'<p><b>附件:</b> <a id={[this.getLinkId(values)]} href="">{fujianname}</a></p><br>',
'<p><b>补签原因:</b><span style="color:green"> {yuanyin}</span></p>',
{
getLinkId: function(values) {
var result = Ext.id();
Ext.defer(function() {
Ext.get(result).on('click', function(e, target){
e.stopEvent();
//自定义逻辑
})
},1000);
return result;
}
}
);
7、tabpanel 标题双击事件
Ext.create('Ext.tab.Panel', {
width: 400,
height: 400,
renderTo: document.body,
items: [{
title: 'Normal'
}, {
title: 'Double-Click',
tabConfig: {
listeners: {
element : 'el',
dblclick : function() {
console.log(this);
}
}
}
}]
});
8:单元格文字事件
renderer: function(value) {
return Ext.String.format('<a class="user" href="javascript:void(0)">{0}</a>', 'html');
}
cellclick : 'cellclickHandler'
cellclickHandler : function(grid, td, cellIndex, record, tr, rowIndex, e, eOpts) {
if (e.getTarget('.user')) {
var win = Ext.create({
xtype: 'HtmlWin_FormWin'
});
win.show();
}
}
ExtJs 常用小技巧备忘录的更多相关文章
- Matlab常用小技巧及部分快捷键
Matlab常用小技巧一: 1. m文件如果是函数,保存的文件名最好与函数名一致,这点都很清楚.不过容易疏忽的是,m文件名的命名尽量不要是简单的英文单词,最好是由大小写英文/数字/下划线等组成.原因是 ...
- javascript的40个网页常用小技巧
下面是javascript的40个网页常用小技巧,对网站开发人员相信会有帮助.1. oncontextmenu="window.event.returnValue=false" 将 ...
- HBase Shell Get 操作常用小技巧
在工作中,有时候只是想简单看下HBase表某些关键指标的值,这个时候总不能现写Java代码去查看,以下几个小技巧你可能会经常用到. 1. 某行有许多列,只想获取指定2~3列的数据 hbase> ...
- 今天整理了几个在使用python进行数据分析的常用小技巧、命令。
提高Python数据分析速度的八个小技巧 01 使用Pandas Profiling预览数据 这个神器我们在之前的文章中就详细讲过,使用Pandas Profiling可以在进行数据分析之前对数据进行 ...
- Visual Studio常用小技巧一:代码段+快捷键+插件=效率
用了visual studio 5年多,也该给自己做下备忘录了.每次进新的组换新的电脑,安装自己熟悉的环境又得重新配置,不做些备忘老会忘记一些东西.工具用的好,效率自然翻倍. 1,代码段 在Visua ...
- Scala的常用小技巧
1."RichString.java".stripSuffix(".java") == "RichString" "http:// ...
- 使用JavaScript在项目前台开发的58种常用小技巧
oncontextmenu="return false" :禁止右键 onselectstart="return false" : 禁止选取 onpaste = ...
- PowerDesigner 的常用小技巧 转
中小 订阅 修改外键命名规则 选择Database—>Edit Current DBMS选择Scripts->Objects->Reference->ConstName可以发现 ...
- iOS 知识-常用小技巧大杂烩
原文链接:http://www.jianshu.com/p/7c3ee5e67d03. 自己看的. 1,打印View所有子视图 po [[self view]recursiveDescription] ...
随机推荐
- Swift和Objective-C混编的注意啦
文/仁伯安(授权) 原文链接:http://www.jianshu.com/p/2ed48b954612 前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更 ...
- iOS - CFNetwork 的使用
1.CFNetwork CFNetwork 是基于 OS 层 BSDSocket 封装(纯 C),用于网络通信,早期的网络请求框架 ASIHTTPRequest 就是基于 CFNetwork 进行的封 ...
- JMeter UI 启动时报错
Problem After running jmeter.bat command under Windows 7 with cmd the following error is produced:W ...
- Android 在已有的项目上创建新的项目
原工程 右键Copy 再右键点Paste 改新的工程名
- Android SharedPreferences的应用
//定义 SharedPreferences share = getSharedPreferences("perference",MODE_PRIVATE); //取值 Strin ...
- 设置PdfPTable与标题间的距离
使用itextsharp生成PDF时,需要改变标题与文档中添加的PdfPTable间距离,改变SpacingBefore值不起作用,查了下这方面的知识较少,自己跟踪代码,找到了设置位置是在使用iTex ...
- 摘:ClickOnce部署
ClickOnce部署 http://www.cnblogs.com/weixing/p/3358740.html#undefined (1):一些发布方式 ClickOnce是什么玩意儿,这个问题嘛 ...
- POSIX 消息队列 和 系列函数
一.在前面介绍了system v 消息队列的相关知识,现在来稍微看看posix 消息队列. posix消息队列的一个可能实现如下图: 其实消息队列就是一个可以让进程间交换数据的场所,而两个标准的消息队 ...
- Python 中的 sys.argv 用法
sys.argv是获取运行python文件的时候命令行参数 下面的代码文件是a.py,当我不用IDE工具,只用命令行窗口运行的时候,进入文件所在目录,输入:python a.py 输出结果如下 imp ...
- python标准库介绍——13 types 模块详解
== types 模块== ``types`` 模块包含了标准解释器定义的所有类型的类型对象, 如 [Example 1-86 #eg-1-86] 所示. 同一类型的所有对象共享一个类型对象. 你可以 ...