现在的位置: 首页 > 综合 > 正文

[easyUI] datagrid选择一行进行操作时的一个问题

2019年08月05日 ⁄ 综合 ⁄ 共 606字 ⁄ 字号 评论关闭

今天使用easyUI的datagrid遇到的一个问题是:

选择一行以后,点击另外一行的编辑按钮,

发现将之前选中的那行内容加载到了编辑菜单中,而不是新点击的这行。(已经设置了单选)

我把这种问题称为“延迟选择”。


我这里是通过getSelections方法获得要编辑的内容加载到编辑菜单中的,

所以从这个问题可以看到,在编辑菜单中调用getSelections方法时,当前被选中的行还是之前选中的那行,

还没来得及切换到点击编辑的这行上。


所以解决的办法是将要编辑这行的id传入编辑菜单,然后根据id选中这行,

这时候再使用getSelections方法获得这行的各项字段加载到编辑菜单中。

代码如下:

<span style="white-space:pre">		</span>if (id != undefined) {
			dataGrid.datagrid('selectRecord',id);
		} 
		var rows = dataGrid.datagrid('getSelections');
		var id = rows[0].id;
		var	name = rows[0].name;
		var	code = rows[0].intentCode;
		var managerName = rows[0].salesManagerName;
		dataGrid.datagrid('unselectAll').datagrid('uncheckAll');

也许还存在更好的解决办法,欢迎讨论。

抱歉!评论已关闭.