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  データLoad
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'であるelement達を取得してくる。
'row'最上位element達の中で名前が'row'であるものたちを行として読み取る。
'prop.row'名前が'prop'である最上位element達の中で一番目のelementの子element達の中で名前が'row'であることたちを行で読み取る。

'prop[0].row'で指定したのと同一である。
'prop[1].row'名前が'prop'である最上位elementたちの中で二番目の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
Load Tree Data