大部分的应用,是从服务器中获取原始数据并将其填充至网格中的方式。 从服务器传送的数据格式可以有很多种,而本次例题中,我们将会了解储存为CSV格式的数据。
通常,我们把逗号间隔的文本文件叫做CSV文件。 分隔符可以是替代逗号的tab或其他文字,而各个值也可以被附上双引号。 而且,开头的几个行可能不是实际的数据行,而是列名称列表等相关所有数据的元信息所构成的。
为应对上述所有情况,SMART datagridDataLoader可以将储存为CSV文件格式的数据,导入至网格的数据组行。 有关详细内容,请参考load方法。
$.ajax({
url: "/repo/grid/resource/data/orders.csv",
dataType: 'text',
success: function (data) {
new DataLudi.DataLoader(dsMain).load("csv", data, {
start: 1, // 从第二行开始,读取为数据行。
count: 500 // 读取最多500个行。
});
}
});
当调用DataLoader.load而将从服务器获取的数据加载到DataSet时,基本上都会删除现有数据并填充新的数据。 但如果调用load,就可以根据fillMode设置,修改或添加现有数据。
$.ajax({
url: "/repo/grid/resource/data/orders.csv",
dataType: 'text',
success: function (data) {
var row = grdMain.focusedIndex().rowIndex;
if (row < 0) row = 0;
new DataLudi.DataLoader(dsMain).load("csv", data, {
start: 1,
count: 500,
fillMode: 'insert', // 'insert', 'append', 'update', 默认为'set'
fillPos: row
});
}
});
当点击下列按钮时,将会加载5个行后,分别插入在当前行的位置上,或添加到最后一行之后,或从当前行的位置开始修改5个行。