question

Phil Factor avatar image
Phil Factor asked

Which is the best Ajax/DHTML/CSS Data grid

Which is the best of the current Ajax editable javaScript grid controls? Preferably jQuery, but I want something with high performance that scrolls and orders, and allows search criteria.
databasewebinterface
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Oleg avatar image
Oleg answered
This post is not about any commercially available grids, these are referenced simply because I am not capable to make the long stories short. When the word Ajax originally surfaced, many people did not realize the true intentions of it, which is a clear separation of data and presentation. Surely, it is easy to drop a heavy grid on aspx page, surround it by the update panel and instantly get a "live page with no flicking between postbacks". The trouble is that this is not what Ajax is supposed to be all about. Any server-side grid, made by a well known vendor such as Infragistics, Component Art or Telerik suffers from this flaw. Certainly, they offer an extremely easy way to create stunnigly looking pages in no time, particularly Infragistics grids. In fact, Infragistics grid has the functionality not available to pure windows grids, such as Excel. Exampe: open existing Excel, type and untype something in one sell. Try to close. Receive the prompt asking whether to save the changes though no changes were actually made. Infragistics grid on the other hand publishes an extremely beautiful event named UpdateRowBatch, so if you have, say 100 records on the grid page, type something in 10 of the records and undo whatever you typed in 5 of them then the ***castable to your original business object type*** collection of rows available to the method actually handling the event is 5 not 10! This said, which grid would I prefer from the bunch I mentioned above? Telerik, because it has the lightest footprint. Much like it would be silly to design pages with graphs without using either Dundas or Microsoft's own set of freely available controls (based on Dundas code), it would be a bad idea to opt for anything other than Telerik should the option to use server-side controls be chosen. Let me go back say 10 years before the word Ajax existed. Could I do a pure html + javascript grid implementation which required practically no coding? Yes. Could I do it with a clean separation of data and presentation so the data traveling between the async postbacks? Absolutely. For example, suppose I include, lets call it a data island, a tag named xml to the head portion of the html page. If this xml is populated with some valid xml data then I can add an html table to my page, add an **datasrc** attribute to it, make the value of the attribute pointing to the hash of that xml and then when adding my TD tags add the **datafld** attribute to each making these equal to the name of some node in the xml. At this point, all I have left to do is to add a very small javascript code handling the appropriate client-side events of the html table and ensure that all that this javascript code does is it manipulates the guts of the xml, nothing else. Because the table is bound to this xml, any changes to it are immediately available, so I can get scrolling using styles and other functionality, such as sorting, adding, deleting, and updating using the javascript. Data islands are things from the past, I just mentioned them to make my point: the only option a performance freak has in nowadays is the javascript based grid, preferrably using a standard, accepted by many library such as jQuery, which seem to offer the easiest way to "translate" the types traveling betweeen the server and the client. While it would be difficult to say which one of the existing grids is the best, the rumor has it that jqGrid developed by Tony Tomov deserves a close look. Here is the link to [download page][1]. Oleg [1]: http://www.trirand.com/blog/?page_id=6
3 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Phil Factor avatar image Phil Factor commented ·
That's very helpful. I'd prefer something like jqGrid as it doesn't commit me to using the whole Microsoft stack. I find the heavyweight 'do-everything' grids a bit intimidating
0 Likes 0 ·
Oleg avatar image Oleg commented ·
@Phil Factor Most importantly, it back-and-forthes the data only, not the data and markup like the heavyweights do.
0 Likes 0 ·
Phil Factor avatar image Phil Factor commented ·
That is exactly what I want. I've therefore ticked this as the answer.
0 Likes 0 ·
Gogolo avatar image
Gogolo answered
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Phil Factor avatar image Phil Factor commented ·
The demos look very impressive. Thanks for the suggestions
0 Likes 0 ·
xiaoyuandlg avatar image
xiaoyuandlg Suspended answered
Not quite familiar with the data grid thing. But, I recently got to know a [C# data grid control][1], don't know it is convenient to use or not. [1]: http://www.kettic.com/winforms_ui/gridview.shtml
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.