easyui dataGridとバックグラウンドのインタラクティブなデータ転送

2787 ワード

1.フロントからバックグラウンドへのデータ転送
プロパティqueryParams、jsonタイプのパラメータをバックグラウンドに渡す
queryParamsがパラメータを指定した場合を除き、dataGridはデフォルトでpage rowsの2つのパラメータをバックグラウンドに渡します.
プロパティurl:バックグラウンドデータインタフェースアドレスの指定
PageSize:ページあたりの表示データ量を指定
$('#sourceDG').datagrid({
        url:"data.json",
	pageSize:10,
	queryParams: {
        	source_type: "",
	        province_load: "",
	        city_load: "",
	        county_load: "",
	        province_delivery: "",
	        city_delivery: "",
	        county_delivery: "",
	        limited: 10,
	        offset: (curr-1)*10           
          },
          onBeforeLoad:function(param){
        	  console.log(param);
          },
          onLoadSuccess:function(data){
        	  console.log(data);
          },
          onLoadError:function(){
        	  console.log(1);
          }
        }); 

 
 
2.バックグラウンドからdataGridへのデータ転送
 
パッケージjsonobject
DataGridが納得できるキーは次の2つしかありません
total:データ総数
rows:返されるデータ
パッケージはデータクラスに戻り、パラメータデータの合計数を返します.
totalCount:データ総数
Obj:データを表示するlist、後のdataGridに表示されるデータはここにカプセル化され、各tdのnameはlistのkeyである
 
toGridJson(int totalCount, Object obj)

 
package com.melon.haul.dto;

import java.sql.Date;
import java.text.SimpleDateFormat;
import java.util.Collection;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;

public class GridJsonUtil {
	
	public static JSONObject toGridJson(int totalCount, Object obj) {  
        //         null        
        if(null == obj) {  
            JSONObject jsonResult = new JSONObject();  
            jsonResult.put("total", totalCount);  
            jsonResult.put("rows", new JSONArray());  
            return jsonResult;  
        }   
        JsonConfig config = new JsonConfig();
        config.registerJsonValueProcessor(java.sql.Date.class, new JsonValueProcessor() {
        private SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");

        @Override
        public Object processArrayValue(Object arg0, JsonConfig arg1) {
        return null;
        }

        @Override
        public Object processObjectValue(String arg0, Object arg1, JsonConfig arg2) {
        return arg1 == null ? "" : sd.format(arg1);
        }
        });
        JSONArray jsonArray = JSONArray.fromObject(obj,config);  
        JSONObject jsonResult = new JSONObject();  
        jsonResult.put("total", totalCount);  
        jsonResult.put("rows", jsonArray);  
        return jsonResult;  
    }  
}