Extjs4.2 获取行数据的两种方法。

var test_grid = Ext.create('Ext.grid.Panel',{
		id: 'test_grid_id',
		columns: [
		    {text: "MsgId", dataIndex: 'MsgId',hidden: true},
          	{text: "Read", dataIndex: 'Read',hidden: true},
            {text: "Subject", flex: 1, dataIndex: 'Subject',renderer: gridformat}
        ],
        listeners: {
			selectionchange : function(model, records) {
		        if (records != 'undefined' && records.length > 0) {
		        	var Subject = records[0].data.Subject;		//获取行数据
		        	alert(Subject);
		        	
		        	var Read = records[0].data.Read;		//获取行数据
		        	if(Read == "true"){
			        	alert("true");
		        	}else{
			        	alert("false");
		        	}
		        }
		    }
        }
	});

上边是行单机事件,如果通过点击某行实现删除等功能,就需要用到

var msgid = test_grid.getSelectionModel().getLastSelected().get('MsgId');

在Extjs4.2版本中,grid.getSelectionModel().getSelections();已不再适用。


下边放一个Extjs4.2之前版本的获取行数据的办法,可获取多行数据。此例可适用于多行删除。

1. 获取

	function get_MsgIds(){
		var recs = test_grid.getSelectionModel().getSelections();// 获取选择行(一行或多行)的数据集
		var list = [];
		if(recs.length != 0){
			for(var i = 0 ; i < recs.length ; i++){
				var rec = recs[i];// 取得一行
				list.push(rec.get('MsgId'))// 取得该行中的某个属性的值
			}
		}
		return list;
	}
2. 删除按钮

tbar: [
    {text: '删除!',handler: function(){
        var list = get_MsgIds();
        var num = list.length;
        if(num == 0){
            Ext.Msg.alert('提示','请选择删除的数据');
        }else{
            delete(list);
        }
    }}
]
3. 删除

function delete(list){
        var MsgIds = list.join(',');        
        Ext.Ajax.request({
            url: '...',    
            params: {        
                FKeyID: MsgIds 
            },
            method: 'POST',
            success: function(response,options){                   
                var result = Ext.util.JSON.decode(response.responseText);    
            },
            failure: function(response,options){   
            }
        });
    }




  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值