在datagrid中设置onExpandRow属性可以实现在当前行下添加 “子行” ,实现多层效果:
但是,当子行添加较多时再添加新的数据,当前datagrid显示就会彻底错乱:
这是由于在detalview.jsp的基层 insertRow方法实现中
var tr = v.find('tr[datagrid-row-index='+index+']');
这行语句导致插入的新行在当前datagrid中寻找插入的位置是出错,只需要将其改成
var tr = v.find('tr[datagrid-row-index=' + 0 + ']').first().siblings('tr[datagrid-row-index=' + index + ']');
就可以解决多层插入的乱行问题了。