问题描述
CRM 2015 Update 1添加了为网格创建OnLoad事件的功能。 我将一个事件连接到Grid的onLoad事件,希望获得已添加到网格的任何值,但是当我尝试获取这些行时,从已注册的onLoad事件调用时,它总是返回0行:
// Always returns undefined when called from the Grid's onLoad Event, even if the user is just sorting the grid
Xrm.Page.getControl("Contacts").getGrid().getRows().get(0);
用户添加或删除行后,是否可以从网格中获取行? 如果代码是在Grid OnLoad事件之外触发的,则代码可以正常工作。
1楼
这是一种解决方法,但这不是最佳方法。
setTimeout(function () {
var allGridRowData = [];
var rows = Xrm.Page.getControl("Contacts").getGrid().getRows();
console.log(rows.length);
rows.forEach(function (row, i) {
allGridRowData.push(row.getData().getEntity());
console.log(allGridRowData);
});
}, 2000);
当他的onload触发时,看起来网格未完全加载记录。