Jquery动态列功能完整实例
程序员文章站
2022-04-09 16:29:38
本文实例讲述了jquery动态列功能。分享给大家供大家参考,具体如下:
看到有人写的一个jquery动态列, 值得参考, 特转发下来
本文实例讲述了jquery动态列功能。分享给大家供大家参考,具体如下:
看到有人写的一个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="http://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 id="head_' + (i+1) +'"></td>'); //generate table body $('#datatable tr[class="tbody"]').append('<td name="col_' + (i+1) + '"></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 id="colselect"> <option value="">--select--</option> </select> <table id="datatable"> <tr class="theader"></tr> <tr class="tbody"></tr> </table> </body> </html>
感兴趣的朋友可以使用在线html/css/javascript代码运行工具:http://tools.jb51.net/code/htmljsrun测试上述代码运行效果。