Ext js 如何获取gird某一列中的按钮,并设置其属性!!!
我的ext js 表格代码如下:
var smsLogPackages=new Ext.grid.ColumnModel([
		//自动显示行号
		new Ext.grid.RowNumberer(),
		{header:'主键',dataIndex:'id',width:10,hidden:true,sortable:true},
		{header:'对应商户ID',dataIndex:'merchantId',width:10,hidden:true},
		{header:'发送时间',dataIndex:'sendDate',width:120,sortable:true},
		{header:'发送数目',dataIndex:'allCount',width:80},
		{header:'成功数目',dataIndex:'success'},
		{header:'操作',dataIndex:'merchantId',align:'center',renderer:renderqueryall},
		{header:'状态',dataIndex:'messageId',align:'center',renderer:renderjudgestate}
	]);
对于
状态这一列,会进行一些判断,如果不符合条件就在这一列显示一个按钮,按钮代码:
	function renderjudgestate(value,cellmeta,record,rowIndex,columnIndex,store){
		if(value==null || value == ''){
			return "<span style='color:red'>发送失败</span>";
		}
		else{
			var messageId = record.get('messageId'); 
			var merchantId = record.get('merchantId');
			
return "<input type='button' id='rtnbtn' onclick='returnSms(\""+messageId+"\",\""+merchantId+"\","+rowIndex+","+columnIndex+");' value='返还短信' />";
		}
}
现在的问题是,我希望点击按钮之后执行ajax,返回成功时设置它的属性,把它变为disabled,不可使用状态,怎么解决。
按钮事件代码:
returnSms = function(messageId,merchantId,rowIndex,columnIndex){
		var compo= smsLogPackages.getColumnModel().getCellEditor(columnIndex, rowIndex); 
  //怎么获取不到按钮控件????
					Ext.Ajax.request({
				 		url: Constant.ROOT_PATH + '/admin/returnSms.do',
						method: 'POST',
						params: {messageId: messageId,merchantId:merchantId},
						
						success: function(resp) {
							var json = Ext.decode(resp.responseText); 
							showInfo(json.msg);
							store.reload();
							
?????  这里面如何设置按钮属性,怎么获取按钮
						},
						failure: function(resp) {
						 	var json = Ext.decode(resp.responseText);  
							if(json != undefined) showErr(json.msg);
							else showErr(Constant.MSG_ERR);             
						}
				 	});
	};
希望路过的朋友帮忙看一下,先谢谢大家呀!
------解决方案--------------------现在在家里无法测试,看了一下
var compo= smsLogPackages.getColumnModel().getCellEditor(columnIndex, rowIndex);
获取到的应该是整个cell吧。你再.down('button')试试。
再给lz讲一个肯定可以的笨办法。就是在render里面把每个button的id指定一下,格式可以选择前缀+rowIndex,
你在需要获取的时候只要知道rowindex就可以通过document.getElementById()获取到啦。哈哈