SMART datagrid v.1 > Classes > TreeDataLoader

Back  Forward

DataLudi.TreeDataLoader.load  method

读取文本或JSON对象或XML,并添加为数据组的数据行。 

根据type,处理data的方式和可以设置在options的属性将会不同。 下列表格中,将会加以说明。有关options中的"fillMode"、"fillPos",请参考"填充方式"表格。 

function load (type: String, data: Object|String, options: Object);
Returns
Void
Parameters
type - String. required.
data - Object|String. required.
options - Object. required.
Table-1  数据加载
typedataoptions
'csv'text'start': 将会读取为数据的起始行位置。默认值是0
'count': 将会读取的行的数量。如果小于0,就会是从start开始的所有行。默认值是-1
'delimiter': 字段分隔符。默认值是','。
'quoted': 如果为true,就会在被'"'(双引号)或'''(单引号)括起时,清除两端并进行读取。
'currency': 如果为true,就会在NUMBER字段的情况,清除除数字、'.'、'-'、'+'等的字符并进行读取。
'filter': 当加载时,将会适用的filter表达式。只读取通过该表达式的行。
有关可以使用在表达式的变量,请参考下列Filter变量
例) 只读取'values['product_id'] like 'n%'' => product_id以'n'开头的行。
'parentId': 当fillMode不是'set'时,将会被添加的行的父行的rowId。如果没有指定,就会被添加为顶级行。
'treeField': 当判断树阶层时,包含将会使用的值的位置。
'needSorting': 如果为true,就会在构成树之前,将会以treeField为标准,进行整体排序。
'json'text | jsontext的情况,先会通过JSON.parse(),进行客观化。
'rows': 将会从data中,读取为行的数据组的位置。指定为以点(.)而划分的路径。
'parentId': 同上述CSV项目。 请参考下列Json Path表格。如果没有指定,就会将data视为是JSON数组。
'filter': 同上述CSV项目。
'xml'text | DOMtext的情况,先会通过使用DOMParser或ActiveXObject,解析为XMLDocument对象。
'parentId': 同上述CSV项目。
'rows': 将会从data中,读取的数据组的位置。指定为以点(.)而划分的路径。 请参考下列Xml Path表格。如果没有指定,就会将data视为是JSON数组。
'filter': 同上述CSV项目。
Table-2  填充方式
fillMode说明
'set'先清除现有行之后,再进行填充。
'append'添加到通过parentId而指定的行的最后一个子行之后。
'insert'插入在通过parentId而指定的行的fillPos位置的子行位置。
Table-3  Json Path
path说明
''如果没有指定或为空字符串,就会将源数据读取为数组。
'row'将源数据的'row'属性读取为数组。
'prop.row'将源数据的'prop'属性的'row'属性读取为数组。
'prop[1].row'源数据的'prop'属性为数组,并且将其第二个对象的'row'属性读取为数组。
'$[0].row'源数据为数组,并且将其第一个对象的'row'属性读取为数组。
Table-4  Xml Path
path说明
''如果没有指定或为空字符串,就无法读取为数据行。如果没有指定,就会获取名称为'row'的elements。
'row'从顶级elements中,将名称为'row'的读取为行。
'prop.row'从名称为'prop'的顶级elements中的第一个element的子element中,将名称为'row'的读取为行。

同指定为'prop[0].row'。
'prop[1].row'从名称为'prop'的顶级elements中的第二个element的子element中,将名称为'row'的读取为行。
'$[0].row'源数据为数组,并且将其第一个对象的'row'属性读取为数组。
Table-5  Filter变量
变量名称说明
'no'当前所读取的源行的位置。将会加以start值。
'row'当前添加或修改中的数据组行号。
'values'源行的字段值。与'values['product_id']'一同使用。
Code -1
    $('#load').click(function () {
        $.getJSON('data/data.json', null, function (data) {
    		new DataLudi.DataLoader(dataset).load('json', data, {
    		    fillMode: "append"
    		});
    		// 或,使用全局函数。
    		DataLudi.loadJsonData(dataset, data, {
    		    fillMode: "update",
    		    fillPos: 10,
    		});
    	});
    });
See Also
TreeDataSet
TreeDataRow
树概述
Examples
加载树数据