看到有人写的一个JQUERY动态列, 值得参考, 特转发下来
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <style> body { margin: 50px 100px; } #dataTable tr td{ width: 100px; display: none; } .theader { background:#A4D4FC; } </style> <script src="https://libs.baidu.com/jquery/1.8.1/jquery.min.js"></script> <script type="text/javascript"> $(function(){ //init page var columns = ['Column A', 'Column B', 'Column C', 'Column D', 'Column E', 'Column F', 'Column G']; for(var i=0; i < columns.length; i++){ //generate dropdown list $('#ColSelect').append('<option>' + columns[i] + '</option>'); //generate header $('#dataTable tr[class="theader"]').append('<td></td>'); //generate table body $('#dataTable tr[class="tbody"]').append('<td></td>'); } //JSON format data var data = { 'Column A': ['A1', 'A2', 'A3', 'A4', 'A5'], 'Column B': ['B1', 'B2', 'B3', 'B4', 'B5'], 'Column C': ['C1', 'C2', 'C3', 'C4', 'C5'], 'Column D': ['D1', 'D2', 'D3', 'D4', 'D5'], 'Column E': ['E1', 'E2', 'E3', 'E4', 'E5'], 'Column F': ['F1', 'F2', 'F3', 'F4', 'F5'], 'Column G': ['G1', 'G2', 'G3', 'G4', 'G5'] }; //Generate tr as per data size for(var i=0; ++i < data['Column A'].length; ){ $('#dataTable').append($('#dataTable tr:last').clone()); } //after tr generate, add stripe style on tr $("#dataTable tr:even[class!='theader']").css("background","#EFEFEF"); //register event on dropdown list. var colIndex = 0; $('#ColSelect').change(function(e){ $("#ColSelect option:selected").each(function () { var val = $(this).val(); if(val){ colIndex++; $(this).remove();//remove selected from dropdown $('#head_'+colIndex).text(val).show();//css('display', 'block');//display header, Note:css('display', 'block') have compatibility issue on FF var idx = 0; $('td[name="col_'+colIndex+'"]').each(function(){ $(this).text(data[val][idx++]).show();//loop to put value in each tr for one column }); } }); }); }); </script> <title>JQuery</title> </head> <body> <select> <option value="">--Select--</option> </select> <table> <tr></tr> <tr></tr> </table> </body> </html>
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:测试上述代码运行效果。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇总》、《jQuery操作xml技巧总结》、《jQuery form操作技巧汇总》、《jQuery常用插件及用法总结》、《jQuery扩展技巧总结》及《jquery选择器用法总结》