EasyUI Forum

General Category => EasyUI for jQuery => Topic started by: Aod47 on February 15, 2017, 07:55:06 AM



Title: create dynamic datagrid columns
Post by: Aod47 on February 15, 2017, 07:55:06 AM
I tried from post http://www.jeasyui.com/forum/index.php?&topic=342.0 (http://www.jeasyui.com/forum/index.php?&topic=342.0) but found error!

Could you please show the correct format of json file for create dynamic datagrid

this is json file I used

Code:
{"total":10,
 "rows":[
{"productid":"FI-SW-01","productname":"Koi","unitcost":10.00,"status":"P","listprice":36.50,"attr1":"Large","itemid":"EST-1"},
{"productid":"K9-DL-01","productname":"Dalmation","unitcost":12.00,"status":"P","listprice":18.50,"attr1":"Spotted Adult Female","itemid":"EST-10"},
{"productid":"RP-SN-01","productname":"Rattlesnake","unitcost":12.00,"status":"P","listprice":38.50,"attr1":"Venomless","itemid":"EST-11"},
{"productid":"RP-SN-01","productname":"Rattlesnake","unitcost":12.00,"status":"P","listprice":26.50,"attr1":"Rattleless","itemid":"EST-12"},
{"productid":"RP-LI-02","productname":"Iguana","unitcost":12.00,"status":"P","listprice":35.50,"attr1":"Green Adult","itemid":"EST-13"},
{"productid":"FL-DSH-01","productname":"Manx","unitcost":12.00,"status":"P","listprice":158.50,"attr1":"Tailless","itemid":"EST-14"},
{"productid":"FL-DSH-01","productname":"Manx","unitcost":12.00,"status":"P","listprice":83.50,"attr1":"With tail","itemid":"EST-15"},
{"productid":"FL-DLH-02","productname":"Persian","unitcost":12.00,"status":"P","listprice":23.50,"attr1":"Adult Female","itemid":"EST-16"},
{"productid":"FL-DLH-02","productname":"Persian","unitcost":12.00,"status":"P","listprice":89.50,"attr1":"Adult Male","itemid":"EST-17"},
{"productid":"AV-CB-01","productname":"Amazon Parrot","unitcost":92.00,"status":"P","listprice":63.50,"attr1":"Adult Male","itemid":"EST-18"}
],
 "columns":[[
    {field:"productid",title:"PID"},
    {field:"productname",title:"PName"},
    {field:"unitcost",title:"Cost",align:"right"},
    {field:"status",title:"Status"},
    {field:"listprice",title:"Price"},
    {field:"attr1",title:"Attr1"},
    {field:"itemid",title:"Item ID"}
]]
}

Thank you very much

Code:
    <table class="easyui-datagrid" data-options="loadFilter: loadFilter,url:'dynamiccolumns.json',method:'get'">
    </table>

    <script type="text/javascript">
        function loadFilter(data) {
            if (!this.columns && data.columns) {
                this.columns = data.columns;
                var opts = $(this).datagrid('options');
                var url = opts.url;
                $(this).datagrid({ columns: data.columns, url: null });
                setTimeout(function() {
                    opts.url = url;
                }, 0);
            }
            return data;
        }
    </script>


Title: Re: create dynamic datagrid columns
Post by: Aod47 on February 15, 2017, 06:26:19 PM
Found answer  ;D

The correct format of columns is

Code:
 "columns":[[
    {"field":"productid","title":"PID","width":80},
    {"field":"productname","title":"PName","width":80},
    {"field":"unitcost","title":"Cost","width":80},
    {"field":"status","title":"Status","width":80},
    {"field":"listprice","title":"Price","width":80},
    {"field":"attr1","title":"Attr1","width":80},
    {"field":"itemid","title":"Item ID","width":80}
]]