常用Extjs工具:Extjs.util.Format使用方法
2024-05-06 14:22:13
供稿:網(wǎng)友
抄些常用工具方便查找
----------字符串
Ext.util.Format.capitalize(string str);//將首字母變大寫
Ext.util.Format.ellipsis(string value, Number length);//截取指定length字符,將自動在尾處添加省略號'...'
Ext.util.Format.htmlEncode(string value); //將文本編碼
lowercase(string value);//變小寫
stripScripts(Mixed value);//刪除所有的Script標(biāo)簽
stripTags(Mixed value);//刪除所有標(biāo)簽
substr(value, start, length)
trim(value)
----------日期
Ext.util.Format.date(Mixd value, [String format]); 如:Ext.util.Format.date(new Date(), 'Y-m-d')=>2012-03-19
Ext.util.Format.dateRenderer(string format);//專門為Ext.grid.Gridpanel使用,ColumnModel中
---------宿舍判斷
defaultValue(Mixed value, string defalutValue);//如果第一個參數(shù)為空,則返回第二個,反之。
undef(Mixed value;//如果value等于空,則回返空字符串,否則返回value
==========擴(kuò)展Function
1、createCallback()會創(chuàng)建當(dāng)前函數(shù)的回調(diào)函數(shù),如:
代碼如下:
var sayHi = function(name){
alert('Hi'+name);
}
new Ext.Button({
text: 'say hi',
handler: sayHi.createCallback('jinshan')
});
createCallback的作用是為原有的參數(shù)設(shè)置默認(rèn)參數(shù)。在上例中,在使用createCallback時就已經(jīng)將‘jinshan' 設(shè)置給對應(yīng)的回調(diào)函數(shù),單擊按鈕后將參數(shù)傳遞給sayHi().
2、createDelegate()會創(chuàng)建當(dāng)前函數(shù)的代理函數(shù)。
如:
代碼如下:
var sayHi = function(name){
alert(name - this.text); //this.text表示btn函數(shù)的text值Say Hi,
}
var btn = new Ext.Button({
text: 'Say Hi'
});
btn.on('click', sayHi.createDelegate(btn, ['jisnh']));
這個創(chuàng)建了代理, sayHi指向了btn。。如果btn改成其它對象,則sayHi將會自動轉(zhuǎn)到其它對象去。
3、createInterceptor(fun, scope);為當(dāng)前函數(shù)設(shè)置攔截器,類似 AOP 概念。如:
代碼如下:
var sayHi = function(name){
alert(name);
}
sayHi('1');
var sayHito = sayHi.createInterceptor(function(name){
return name == '2';
});
sayHito(1) ;//沒有提示
sayHito(2);//彈出2
攔截器會在原函數(shù)執(zhí)行之前執(zhí)行,并且只有在攔截器返回true時才會去執(zhí)行原函數(shù)。