0

如何在 Ext 上将数字渲染器格式应用于像1233453455647895这样的数字字段以将其拆分为 4 个块,例如1233-4534-5564-7895

任何答案将不胜感激

解决方案(感谢@newmount 和@Rajinder)是(2013 年 10 月 24 日编辑)

flex: 1,  
dataIndex: 'IdMoviCaja',  
text: 'Id',  
renderer: function (value){  
    if (Ext.isEmpty(value)) return value;  
    else {  
        value = value.toString();    
        //Remove existing hyphen first  
        var rg = /([-])/g;  
        value = value.replace(rg, "");    

        //Insert hyphen  
        var re = /(\d{4})(?!$)/g;  
        value = value.replace(re, "$1" + "-");    

        return value;  
    }
}
4

2 回答 2

1

我不认为这种格式在 extjs 中可用。因此,您必须在列渲染器中编写自定义逻辑,如下所示:

    renderer: function(value){
        //custom logic to parse value and format it according to your requirement
        return formattedString;
   }
于 2013-10-24T07:11:25.133 回答
0

不确定在数字字段中使用连字符,但您可以使用文本字段并验证它。关于格式化,请参见这个小提琴:https ://fiddle.sencha.com/#fiddle/155 (格式化发生在模糊上)

于 2013-10-24T09:46:29.503 回答