// Usage: var json = $('table').tableToJSON(); // JSON.stringify(json); // copy(json); (function($) { $.extend($.fn, { tableToJSON: function() { var $el = this; var attrs = $('thead th', $el).map(function(idx, heading) { return $(heading).text().trim().toLowerCase(); }); return $('tbody tr', $el).map(function(idx, row) { var $row = $(row); var obj = {}; $('td', $row).each(function(idx, col) { var attr = attrs[idx]; obj[attr] = $(col).text().trim(); }); return obj; }).toArray(); } }); })(jQuery);