Extjs知识点汇总

自定义渲染单元格内容

{
            name:"device.flag",
            header: '确认',
            dataIndex: 'flag',
            50,
            renderer: function(value, cellmeta, record, rowIndex, columnIndex, store){
                if(value == '1'){
                    return "<input id='flag12' name='flag' type='checkbox'  onclick='javascript:changeme(this,"+rowIndex+","+columnIndex+")' checked=true>";
                }
                return "<input id='flag1' name='flag' onclick='javascript:changeme(this,"+rowIndex+","+columnIndex+")' type='checkbox' >";
            }
        }

获取单元格内容的值

function changeme(obj,rowIndex, columnIndex){
        console.log(rowIndex+"changeme1:"+obj.checked+columnIndex);
        var store = Ext.getCmp("grid_ly").getStore();
        var record = store.getAt(rowIndex);
        console.log(rowIndex+"record:"+record.data.flag);
        if(obj.checked){
            record.data.flag="1";
        }else{
            record.data.flag="0";
        }
    }

遍历表格数据改变行背景色

resultGrid.getStore().on('load',function(s,records){
          var girdcount=0;
          s.each(function(r){
                  if(r.get('QRQK')=='待确认'){
                         resultGrid.getView().getRow(girdcount).style.backgroundColor='#FFE4E1';
                  }else{
                         resultGrid.getView().getRow(girdcount).style.backgroundColor='#C1FFC1';
                  }
                 girdcount=girdcount+1;
             });
      });

 弹出密码确认框,输入登录密码进行确认

function confirmPwd(){
            var pwd_txt = new Ext.form.TextField({
                id:'passwd',
                300,
                inputType: 'password',  
                fieldLabel:'密码验证'
            });
            var winPWD = [];
            winPWD.push(pwd_txt);
            var distwin = new Ext.Window({
                        title: '登陆验证',
                        id:'pwdWin',
                         420,
                        height: 120,
                        closable: false,
                        closeAction: 'hide',
                        resizable: false,
                        layout:'border',
                        modal:true,
                        items:[
                            new Ext.FormPanel({
                                id: 'pwdForm',
                                labelAlign: "right",
                                labelSeparator: ':',
                                layout: "form",
                                labelWidth: 80,
                                region: 'center',
                                frame: true,
                                 'auto',
                                borderStyle: '0px',
                                items: winPWD
                            })
                        ],
                        buttons: [{
                            id: 'saveBtn',
                            text: '保存',
                            handler:function(){
                                var winForm = Ext.getCmp("pwdForm");
                                if(winForm.form.isValid()){
                                    var url = '/itsm/changeinfo/changePassAction!checkPassword.action';
                                    var pwd_input= jQuery("#passwd").val();
                                    $j.ajax({
                                        url:url,
                                        cache:false,
                                        data:{
                                            password: pwd_input
                                        },
                                        type:'post',
                                        success:function(a){
                                                var data = eval('('+a+')');
                                                console.log(data);
                                                if(data.code == 200){
                                                    distwin.close();
                                                    document.getElementById("confirmForm").submit();
                                                } else {
                                                    Ext.Msg.alert("提示","输入的密码错误,无法进行下一步操作!");
                                                }
                                        }
                                    });
                                    
                                }
                            }            
                        },{
                            text: '取消',
                            handler: function() {
                                distwin.close();
                                return false;
                            }
                        }]
                    });
                    distwin.show();
                    return false;
        }

 为指定id的组件设置值

Ext.getCmp("poolId<%=s%>").setValue('${param.poolId}');

 获取grid中选中的行及行内属性的值

     {
            text: '删除行',
            iconCls:'remove',
            handler: function() {
                var selectRows = sm_cg.getSelections();
                if (selectRows.length) {
                    Ext.Msg.confirm('信息', '确定要删除?',
                    function(btn) {
                        if (btn == 'yes') {
                            for (x in selectRows) {
                                if(selectRows[x].data.id != ""){
                                }else{
                                    jsonstore_cg.remove(selectRows[x]);
                                }
                            }
                            grid_cg.getView().refresh();
                        }
                    });
                }else{
                    Ext.Msg.alert("提示","请先选中要删除的行!");
                }
            }
        }
原文地址:https://www.cnblogs.com/luoxiaolei/p/7227599.html