jQWidgets Forums
jQuery UI Widgets › Forums › Grid › Knockout with nested object
Tagged: data, grid, jqxgrid, Knockout, KO, nested, nested json, nested object, observableArray, source
This topic contains 1 reply, has 2 voices, and was last updated by Dimitar 9 years, 9 months ago.
Viewing 2 posts - 1 through 2 (of 2 total)
-
Author
-
Hi Peter,
related to this topic: Knockout with nested object; can you please tell me if there is any new development about?Can nested objects be managed in knockout grids in version 3.8.1?
Thanks in advance.
GiovanniHi Giovanni,
This functionality is supported. Here is an example:
<!DOCTYPE html> <html lang="en"> <head> <link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" type="text/css" /> <script type="text/javascript" src="../../scripts/jquery-1.11.1.min.js"></script> <script type="text/javascript" src="../../scripts/json2.js"></script> <script type="text/javascript" src="../../scripts/knockout-3.0.0.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxdata.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxbuttons.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxscrollbar.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxmenu.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.selection.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.edit.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxknockout.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxcheckbox.js"></script> <script type="text/javascript" src="../../scripts/demos.js"></script> <script type="text/javascript"> $(document).ready(function () { var GridModel = function () { this.items = ko.observableArray(); var me = this; $.ajax({ datatype: 'json', url: "userdata.txt", async: false }).done(function (data) { var jsonData = $.parseJSON(data); me.items(jsonData); }); }; var model = new GridModel(); // prepare the data var source = { datatype: "observablearray", datafields: [ { name: 'Street' }, { name: 'City' }, { name: 'FirstName', map: 'User>FirstName' }, { name: 'LastName', map: 'User>LastName' } ], id: 'id', localdata: model.items }; var dataAdapter = new $.jqx.dataAdapter(source); $("#grid").jqxGrid( { width: 670, source: dataAdapter, columns: [ { text: 'Street', datafield: 'Street', width: 250 }, { text: 'City', datafield: 'City', width: 250 }, { text: 'FirstName', datafield: 'FirstName', width: 180 }, { text: 'LastName', datafield: 'LastName', minwidth: 120 } ] }); ko.applyBindings(model); }); </script> </head> <body class='default'> <div id='jqxWidget'> <div id="grid"> </div> </div> </body> </html>
and here is the content of userdata.txt:
[ { "Street": "Pineapple St.", "City": "New York City", "User": { "FirstName": "Alfonso", "LastName": "Peterson" } }, { "Street": "Escort St.", "City": "London", "User": { "FirstName": "Jane", "LastName": "Van Dyne" } } ]
Best Regards,
DimitarjQWidgets team
http://www.jqwidgets.com/ -
AuthorPosts
Viewing 2 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic.