要求:
HTML标签只写一行表头 通过JS来写动态的表格(有多少组数据,就自动创建多少行表格) 为学习和演示,采用固定的数据,不涉及调用后台数据
实现效果:
代码实现:
<!DOCTYPE html>
< html lang = " en" > < head> < meta charset = " UTF-8" > < meta name = " viewport" content = " width=device-width, initial-scale=1.0" > < title> Document</ title> < style> table { width : 500px; margin : 100px auto; border-collapse : collapse; text-align : center; } td,th { border : 1px solid #333; } thead tr { height : 40px; background-color : #ccc; } </ style>
</ head> < body> < table cellspacing = " 0" > < thead> < tr> < th> 姓名</ th> < th> 科目</ th> < th> 成绩</ th> < th> 操作</ th> </ tr> </ thead> < tbody> </ tbody> </ table> < script> var datas = [ { name: '张三' , subject: 'JavaScript' , score: 100 } , { name: '李四' , subject: 'JavaScript' , score: 98 } , { name: '王五' , subject: 'JavaScript' , score: 99 } , { name: '赵六' , subject: 'JavaScript' , score: 88 } , { name: '小明' , subject: 'JavaScript' , score: 60 } ] ; var tbody = document. querySelector ( 'tbody' ) ; for ( var i = 0 ; i < datas. length; i++ ) { var tr = document. createElement ( 'tr' ) ; tbody. appendChild ( tr) ; for ( var k in datas[ i] ) { var td = document. createElement ( 'td' ) ; td. innerHTML = datas[ i] [ k] ; tr. appendChild ( td) ; } var td = document. createElement ( 'td' ) ; td. innerHTML = '<a href="javascript:;">删除</a>' ; tr. appendChild ( td) ; } var as = document. querySelectorAll ( 'a' ) ; for ( var i = 0 ; i < as . length; i++ ) { as [ i] . onclick = function ( ) { tbody. removeChild ( this . parentNode. parentNode) } } </ script>
</ body> </ html>