이 문서의 예에서는 자바스크립트를 사용하여 동적으로 테이블을 생성하고 데이터를 추가하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.
1. 동적으로 테이블 생성(코드는 IE6과 호환되지 않음)
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>动态创建表格</title> <script type="text/javascript"> function AppendTableData() { var table = document.getElementById("tblMain"); var data = { "百度": "http://www.baidu.com", "脚本之家": "http://www.jb51.net", "搜狐": "http://www.sohu.com" }; for (var key in data) { var tr = document.createElement("tr"); var td1 = document.createElement("td"); td1.innerText = key; //FireFox不支持innerText,只能使用innerHTML tr.appendChild(td1); var td2 = document.createElement("td"); td2.innerHTML = "<a href='" + data[key] + "'>" + data[key] + "</a>"; tr.appendChild(td2); table.appendChild(tr); } } </script> </head> <body> <table id="tblMain"></table> <input type="button" value="动态添加网格数据" onclick="AppendTableData()" /> </body> </html>
2. 동적으로 테이블 생성(IE6, IE7과 호환)
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>添加网格数据(处理了IE兼容问题)</title> <script type="text/javascript"> function AppendData() { var data = {"脚本之家":"http://www.jb51.net", "百度":"http://www.baidu.com", "搜狐": "http://www.sohu.com"}; var table = document.getElementById("tblMain"); for (var key in data) { var value = data[key]; var tr = table.insertRow(-1); //FireFox必须使用-1这个参数 var td1 = tr.insertCell(-1); td1.innerText = key; var td2 = tr.insertCell(-1); td2.innerHTML = "<a href='" + value + "'>" + value + "</a>"; } } </script> </head> <body> <table border="1" id="tblMain"></table> <input type="button" value="添加网格数据(处理了IE兼容问题)" onclick="AppendData()" /> </body> </html>
3. 동적으로 테이블 생성(IE6 및 IE7과 호환)
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>动态创建表格(处理IE6兼容问题)</title> <script type="text/javascript"> function AppendTableData() { var table = document.getElementById("tblMain"); var data = { "百度": "http://www.baidu.com", "脚本之家": "http://www.jb51.net", "搜狐": "http://www.sohu.com" }; for (var key in data) { var tr = document.createElement("tr"); var td1 = document.createElement("td"); td1.innerText = key; tr.appendChild(td1); var td2 = document.createElement("td"); td2.innerHTML = "<a href='" + data[key] + "'>" + data[key] + "</a>"; tr.appendChild(td2); //table.appendChild(tr); 把这一句替换掉 table.tBodies[0].appendChild(tr); } } </script> </head> <body> <!--由于动态添加的数据在debugbar中看生成的HTML代码发现, 会自动添加一个<tbody> 并且内容是空的,把我们动态生成的数据给冲掉了, 所以我们手工添加一个<tbody> tr添加到这个<tbody>下面 --> <table id="tblMain"><tbody></tbody></table> <input type="button" value="动态添加网格数据" onclick="AppendTableData()" /> </body> </html>
이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.