来自其他URL的HTML表到JSON
嘿家伙我使用这个lib
将html
表转换为json array
。
http://lightswitch05.github.io/table-to-json/
有了这个,我的表被转换为许多对象,并在chrome控制台中显示它。
当我和桌子在同一页面上时,它可以工作,但我希望将json
放到另一个页面上。 最初我这样做是为了瞄准我的元素并让它改变它,但没有运气任何想法?
$.get("http://support.jonar.com/support/default.asp?W2305", function(data) { var table_csv = $("table.testtable").html(data); //this gives me the entire html doc console.log(table_csv); var myjson = $(table_csv).tableToJSON(); });
这将返回整个文档.. for table_csv
。 此外,当我将html
到变量中时,我运行$(table_csv).tableToJSON();
我得到一个空值我只看到[]
多谢你们!
您可以使用Range.createContextualFragment
将数据转换为DocumentFragment
。
然后,您可以使用querySelector
查找您的表,并使用jQuery来调用tableToJSON
。
var frag = document.createRange().createContextualFragment(data); $(frag.querySelector('table')).tableToJSON();
UPDATE
由于它不起作用,可能是因为tableToJSON
要求将元素放在文档中才能工作。 所以,你可以这样做:
var frag = document.createRange().createContextualFragment(data); var tbl = frag.querySelector('table'); document.body.appendChild(tbl); var myjson = $(tbl).tableToJSON(); tbl.parentNode.removeChild(tbl);
这样,您只需临时将表附加到文档以获取JSON,并在生成json后立即将其删除。 如果该解决方案不起作用,请发表评论。