Handsontable - Excel-like table editor in HTML & jQuery
warpech.github.com
warpech.github.com
* Here, contentEditable cells on click, arrows up/dn for rows, tab/shft+tab for columns:
http://georgenava.appspot.com/demo/spreadsheet.html
Coincidentally I was playing with that yesterday for a project, but yours is a hundred thousand times better.
There are lots of table alternatives out there, but most croak when you start working with 1000's of rows.
EDIT: seems like no go: 500 rows take ~10sec to render
caution: will freeze firefox while rendering
rowHeaders: false,
colHeaders: false,
Example: http://jsfiddle.net/JKg33/2/That is the newest feature and I am sure it can be optimised.
It would be the best if you could help me with the plugin by issueing a ticket in GitHub. I do this for my own startup (www.giraffeapp.com) and I have to split time between this and other tasks.
SlickGrid does this very well, but they don't have the Excel-like features that biz people fawn over.
Still there is some work to be done but it is much faster now.
Spreadsheets/tables are a great way to structure data. However, JS-'enhancing' such data makes scraping the data much more difficult. I am a little bit concerned that the web has been moving more and more away from connected data and towards isolated apps.
HTML for content, CSS and JS for presentation, it's nothing a half-decent web dev hasn't heard a million times already.
Datatables - http://datatables.net/
jEditable - http://www.appelsiini.net/projects/jeditable
How to integrate - http://datatables.net/release-datatables/examples/api/editable.htmlYou can see what the spreadsheets look like at http://www.ethercalc.org/
For just viewing and editing spreadsheets without social features, you can ignore the servers included, the javascript widget works just fine by itself.
Dan Bricklin co-authored VisiCalc, the first spreadsheet program for the masses.
*Disclaimer - I am the author of DataTables.
Of course, the paged option might alleviate that somewhat, but requirements won't let me use that.
However, for simple input this looks great. What else is out there? I saw the projects listed on this project's github but those weren't the same - just start editing and pasting.
1) JSON is what is used to init the table code right? 2) If it is JSON, JSON can contain logic? As in the match logic? 3) What is the function name? Is it match? Where does it get called from? How many paths are there to call it? 4) CSS style is hard coded into the (I think) JSON string, is mixing data (JSON), programming logic (if expressions) and CSS styling really the best new way to do UI development? So back in the day before MVC when we used to mix this stuff; we were doing it 'right'?
JavaScript is good for some things but WebGL and Excel-like spreadsheets are too much if not just for performance then also for maintainability, IMO.
Where were you guys 16 years ago?
NOTE Still in development ;)
What I've done is I wanted to have a Ms Access like application on the web. Everything "real time". As datagrid i use SlickGrid. Every change is being sent to a nodeJs webserver using NowJs. The change is then saved to a mongoDb database. When a change is saved all clients that are viewing that table get an update with the new data. On the right is my "meta" table. This table describes all columns that are in the database. The data in the meta table is only saved when you click save. But all the data in the left table is real time.
To see the real "power" of the application open two browsers and make sure you can see both. If you have two separate PC's this will also work. So now you have the same datagrid twice. Now when you do a change in one datagrid you will see that that change has been pushed to the other datagrid as well.
The datagrid has multi-column-sorting, selection, copy-paste and delete. I'm working now on having Comboboxes so that you can have a Cities table and a Persons table and you can select the right city for each person. The thing is, I need to keep my combobox options in sync with the database as well. And I want to store the ObjectID and not the CityName for example. Because names can change. ID's don't.
very cool that you can copy and paste though. I've often wanted a way for users to copy excel data into an app as opposed to making them inport a csv...
Maybe I'm missing it but I can't see it anywhere in the Docs.
Thank you Marcin Warpechowski / Giraffe for creating this and uptown for submitting this.
This is why I read HN daily.
(Edited to improve readability)