使用 AG 网格,我需要制作一个在单击时选择行的表格,但是单击某些单元格不会导致选择该行。
到目前为止,我最好的想法是当鼠标悬停在非选择单元格上时禁用单击行选择。就像是:
gridOptions.onCellMouseOver = (event) => {
if (/*cell is from non-select column*/ )
this.gridOptions.suppressRowClickSelection = true;
}
gridOptions.onCellMouseOut = (event) => {
if (/*cell is from non-select column*/ )
this.gridOptions.suppressRowClickSelection = false;
}
唯一的问题是 onCellMouseOver 和 Out 似乎没有及时触发;如果您快速从选择行移动到在非选择单元格内单击,行选择仍然会触发。我有一个额外的 onCellClicked 函数,它会触发并显示 gridOptions.suppressRowClickSelection 按预期设置为 true,但当点击速度太快时,似乎该属性没有及时设置。
如果有人知道解决 onMouseOver 计时问题的方法,我很想知道。或者,如果有更好的方法来实现此功能,我会洗耳恭听。
Thanks
这是一种方法:
this.gridOptions = {
suppressRowClickSelection: true,
onCellClicked: (e) => {
if (e.column.colId !== 'name') { // cell is from non-select column
e.node.setSelected(true);
}
}
};
基本上,我们仅在单击符合条件的单元格时手动选择行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)