核心代码JavaScript代码:
function sc () { var myTable=document.getElementById("myTable"); //获取表格中的所有行 var rows=myTable.rows; //获取第一行的所有列 var title=rows[0].cells; var json=""; for (var i=1;i<rows.length;i++) { var cells=rows[i].cells;//获取第i行中的所有列 json+="{"; //拼裝JSON字符串 for (var j=0;j<cells.length;j++) { json+="\""+title[j].innerHTML+"\":\""+cells[j].innerHTML+"\"," } //运用substring()方法获取所需要的子串,去掉不需要的逗号 json=json.substring(0,json.length-1)+"}," } json="["+json.substring(0,json.length-1)+"]"; alert(json); }
HTML代码
<table id="myTable" class="cart_table"> <tr class="cart_title"> <td>编号</td> <td>书名</td> <td>单价</td> </tr> <tr> <td>1</td> <td>C程序设计语言</td> <td>50</td> </tr> <tr> <td>2</td> <td>并行程序设计</td> <td>80</td> </tr> <tr> <td>3</td> <td>C#设计模式</td> <td>100</td> </tr> </table> <input type="button" onclick="sc()" value="获取表格数据生成JSON" />
CSS样式
.cart_table { text-align: center; border-collapse: collapse; } .cart_title { background-color: #999999; } td { border: 1px solid; }
得到JSON数据如下
[{"编号":"1","书名":"C程序设计语言","单价":"50"},{"编号":"2","书名":"并行程序设计","单价":"80"},{"编号":"3","书名":"C#设计模式","单价":"100"}]