Table表格行击事件选中单选按钮的解决办法

分享 未结 0 256
青大侠
青大侠 2019-8-14
悬赏:20飞吻
又是修改修改源码。
1、修改table.js文件,找到 以下:
//行事件
that.layBody.on('mouseenter', 'tr', function(){ //鼠标移入行});这事件内容
}).on('click', 'tr', function(){ //单击行
setRowEvent.call(this, 'row');
})
改为
that.layBody.on('mouseenter', 'tr', function(){ //鼠标移入行});这事件内容
}).on('click', 'tr', function(){ //单击行
if(that.config.rowSelect){
var othis = $(this)
,thisData = table.cache[that.key]
,index = othis.index()
,tr=that.layBody.find('tr:eq('+ index +')')
,radio = tr.find('input[lay-type="layTableRadio"]')//.prev();;
radio.attr('checked','checked');
//radio.prop('checked',true);
that.renderForm('radio');
//重置数据单选属性
layui.each(thisData, function(i, item){
if(index === i){
item.LAY_CHECKED = true;
} else {
delete item.LAY_CHECKED;
}
});
that.setThisRowChecked(index);
setRowEvent.call(this, 'rowSelect');
}
else setRowEvent.call(this, 'row');
})
2、使用 table.render({});增加配置一项:,rowSelect:true
设定打行选择功能。
3、事件监听:
 table.on('rowSelect(表格ID)',function(obj){
var rowdata=obj.data;
});
获得选择数据还是不变的。
回帖
  • 消灭零回复