[英]Convert HTML Table to Json
是否可以像这样将HTML表转换为json:
名字性别年龄
约翰M 18
{
"name": "John",
"Gender": "M",
"Age": "18"
},
我们使用的程序会为我们生成一个HTM文件,直到我要转换为止。 但是:D之前,我从未见过这样的格式。 大多数时候,我是iOS开发人员。 HTML中的我的表格如下所示:
<TABLE border="3" rules="all" bgcolor="#E7E7E7" cellpadding="1" cellspacing="1">
<TR>
<TD align=center><font size="3" face="Arial">
Date
</font> </TD>
<TD align=center><font size="3" face="Arial">
<B>Teacher</B>
</font> </TD>
<TD align=center><font size="3" face="Arial">
?
</font> </TD>
<TD align=center><font size="3" face="Arial">
Hour
</font> </TD>
<TD align=center><font size="3" face="Arial">
Subject
</font> </TD>
<TD align=center><font size="3" face="Arial">
Class </font> </TD>
<TD align=center><font size="3" face="Arial">
Room
</font> </TD>
<TD align=center><font size="3" face="Arial">
(Teacher)
</font> </TD>
<TD align=center><font size="3" face="Arial">
(Room)
</font> </TD>
<TD align=center><font size="3" face="Arial">
XYY
</font> </TD>
<TD align=center><font size="3" face="Arial">
<B>Information</B>
</font> </TD>
<TD align=center><font size="3" face="Arial">
(Le.) nach
</font> </TD>
</TR><TR>
<TD align=center><font size="3" face="Arial">
24.9.
</font> </TD>
<TD align=center><font size="3" face="Arial">
<B><strike>Dohe</strike></B>
</font> </TD>
<TD align=center><font size="3" face="Arial">
Free
</font> </TD>
<TD align=center><font size="3" face="Arial">
1
</font> </TD>
<TD align=center><font size="3" face="Arial">
<strike>Math</strike>
</font> </TD>
<TD align=center><font size="3" face="Arial">
(9)
</font> </TD>
<TD align=center><font size="3" face="Arial">
---
</font> </TD>
<TD align=center><font size="3" face="Arial">
<strike>Dohe</strike>
</font> </TD>
<TD align=center><font size="3" face="Arial">
A001
</font> </TD>
<TD align=center> </TD>
<TD align=center> </TD>
<TD align=center><font size="3" face="Arial">
Free.
</font> </TD>
</TR><TR>
JavaScript:
(function() {
var jsonArr = [];
var obj = {};
var thNum = document.getElementsByTagName('th').length;
var arrLength = document.getElementsByTagName('td').length;
for(i = 0; i<arrLength;i++){
if(i%thNum==0){
obj = {};
}
var head = document.getElementsByTagName('th')[i%thNum].innerHTML;
var content = document.getElementsByTagName('td')[i].innerHTML;
obj[head] = content;
if(i%thNum==0){
jsonArr.push(obj);
}
}
document.write("<br>"+JSON.stringify(jsonArr));
})();
http://jsfiddle.net/decv1vs2/1/
或您的情况:
http://jsfiddle.net/decv1vs2/2/ (将标题更改为或添加类)
尝试这个:
$('#btnid').click( function() {
var table = $('#tableid').tableToJSON();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.