繁体   English   中英

将HTML表转换为Json

[英]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>&nbsp;</TD>
<TD align=center>&nbsp;</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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM