extjs 中label使用fieldLabel 的方法,还可以添加renderer方法

来源:互联网 发布:防止sql注入方法java 编辑:程序博客网 时间:2024/05/05 14:36

这组件个完全适应formpanel的要求


Ext.form.Label = Ext.extend(Ext.form.Field, {    onRender: function(ct, position) {        Ext.form.Field.superclass.onRender.call(this, ct, position);        if (!this.el) {            var cfg = this.getAutoCreate();            if (!cfg.name) {                cfg.name = this.name || this.id;            }            if (this.inputType) {                cfg.type = this.inputType;            }            this.el = ct.createChild(cfg, position);            //this.el.wrap();                          //var cel= this.el.createChild({tag:'LabelDiv'});                          //this.el.addClass('x-form-field-wrap')                        this.setValue(this.value);        }        if (this.tabIndex !== undefined) {            this.el.dom.setAttribute('tabIndex', this.tabIndex);        }        this.el.addClass([this.fieldClass, this.cls]);    },    setText: function(text) {        this.el.dom.innerHTML = text;    },    setValue: function(v) {        var rendervalue;        this.value = rendervalue = (v === null || v === undefined ? '': v);        if (this.rendered) {            if (this.renderer) {                rendervalue = this.renderer(this.value, this.getName());            }            this.el.dom.value = this.value;            this.setText(rendervalue);            this.validate();        }    },    defaultAutoCreate: {        tag: "Div",        size: "20"    }});Ext.reg('label', Ext.form.Label);



 

效果图看其中的    附件: reademe.txt 效果.

效果图

 

这个在用的时候只要把xtype改成label就可以了

{

xtype:'label',

label:'姓名',

name:'xingMing'

..其它的跟textfield 在formpanel中的用法一样

}


关于  查看正文 这个按钮. 是怎么实现的. 我也忘记了,  代码太就久远了. 我回家找找看



今天是2016-8-17日, 距离我写这篇文章已经好久了.下面是我补充的.


我建议大家使用extjs要尽量缩小extjs的范围. 因为他不是那么好维护.  开发效率比较低.


使用 html去布局,  extjs控件的  renderTo 功能.  会非常简单.

例如这篇文章的用法.

http://zhidao.baidu.com/link?url=PI8QrWz9Eni86y2dnAwgbm178unHP02omxHA9rfDSo3DxDbR8e_HU8nrAUUG4el88-cXkXaCDqr7BfJhcVlir_


 重点是  renderTo:"appConId"

 
然后 最好不要使用extjs的 按钮和文本框之类的东西.  只用extjs的  combox 和grid, 日期选择框  就够了.  其它的还是用html 原生的比较高效.

把extjs的应用范围减少到最小.  

extjs的开发效率比较低.    很复杂.  



原创粉丝点击