SMART datagrid v.1 > Classes > DataLoader

Back  Forward

DataLudi.DataLoader.load  method

テキストやJson客体、もしくはXmlを読み取って データセットのデータ行たちとして追加する。 

typeによってdataを処理する方式とoptionsに設定できるプロパティーが異なる。 下の表で説明する。optionsの中で"fillMode"、"fillPos"は"満たし方"テーブルを参考する。 

function load (type: String, data: Object|String, options: Object): Number;
Returns
Number
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': ロードの時に適用するfiter数式。この数式を通過した行たちだけ読み取る。
数式に使える変数は下のFilter変数達参考。
例) 'values['product_id'] like 'n%'' => product_idが'n'で始まる行だけ読み取る。
'json'text | jsontextの場合、まずJSON.parse()で客体化する。
'start': データで読み取る最初の行の位置、デフォールト値は0.
'count': 読み取る行の数。0以下ならstartからすべての行。デフォールト値は-1.
'rows': dataの中で行で読み取るデータセットの位置。コンマで分離された経路で指定する。 下のJson Pathテーブル参考。指定しなければdataをjsonアレイとしてみなす。
'filter': 上のcsv項目と同一。
'xml'text | DOMtextの場合、まずDOMParserやActiveXObjectを利用してXMLDocument客体でパースする。
'start': データで読み取る最初の行の位置、デフォールト値は0.
'count': 読み取る行の数。0以下ならstartからすべての行。デフォールト値は-1.
'rows': dataの中で行で読み取るデータセットの位置。コンマで分離された経路で指定する。 下のXml Pathテーブル参考。指定しなければdataをjsonアレイとしてみなす。
'filter': 上のcsv項目と同一。
Table-2  満たし方
fillMode説明
'set'既存の行たちを削除した後満たす。
'append'最後の行の次に追加する。
'insert'fillPos位置にインサート追加する。
'update'fillPos位置からoverwriteする。
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
DataSet
Examples
Load Csv Data
Load Json Data
Load Xml Data