看下效果吧:HTML - 模板代碼: 復制代碼 代碼如下: <table id="test"> <tr class="header"> <td style="width: 100px;" sort='true'> 姓名 </td> " /> 亚洲人成在线观看一区二区,女人麻豆国产香蕉久久精品,国产亚洲精品视频亚洲香蕉视

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

一個可綁定數據源的jQuery數據表格插件

固定表頭
列寬可調整
單擊列頭可排序
雙擊單元格可編輯
可綁定數據源

看下效果吧:
HTML - 模板代碼:
復制代碼 代碼如下:
<table id="test">
<tr class="header">
<td style="width: 100px;" sort='true'>
姓名
</td>
<td style="width: 100px;" sort='true'>
性別
</td>
<td style="width: 100px;" sort='true'>
年齡
</td>
<td style="width:200px;" sort='true'>
住址
</td>
</tr>
<tr class="itemtemplate">
<td editable='true'>
{姓名}
</td>
<td editable='true'>
{性別}
</td>
<td editable='true'>
{年齡}
</td>
<td editable='true'>
{住址}
</td>
</tr>
</table>

jsascript代碼:
復制代碼 代碼如下:
//測試數據
var dataJsonStr='{tablename:"",rows:[{"姓名":"曹操","性別":"男","年齡":"51","住址":"許昌"},{"姓名":"諸葛亮","性別":"男","年齡":"40","住址":"南陽"},{"姓名":"周瑜","性別":"男","年齡":"40","住址":"江東"},{"姓名":"大喬","性別":"女","年齡":"30","住址":"江東"},{"姓名":"小喬","性別":"女","年齡":"28","住址":"江東"},{"姓名":"曹操","性別":"男","年齡":"51","住址":"許昌"},{"姓名":"諸葛亮","性別":"男","年齡":"40","住址":"南陽"},{"姓名":"周瑜","性別":"男","年齡":"40","住址":"江東"},{"姓名":"大喬","性別":"女","年齡":"30","住址":"江東"},{"姓名":"小喬","性別":"女","年齡":"28","住址":"江東"}]}';
//清空數據
$('#test').DataGridClear();
//設定行樣式
$('#test').DataGridSetItemClass("tr1","tr2","trhover");
//綁定數據,并設置寬度高度
$('#test').DataGrid("100%",200,dataJsonStr);

結構示意圖:

如何根據HTML模板創建DataGrid整個結構?
1.首先創建 表頭 主體 等各區域:
復制代碼 代碼如下:
TableBody.addClass('TableBody');
TableBody.wrap("<div id='"+MyTableId+"' class='houfeng-table'></div>");
var MyTable=$('#'+MyTableId);
TableBody.data('MyTable',MyTable);
TableBody.before("<table class='TableHead' ></table>");
var TableHead=MyTable.find(".TableHead");
TableBody.data('TableHead',TableHead);
TableBody.wrap('<div class="TableBodyArea"></div>');
TableHead.wrap("<div class='TableHeadArea' onselectstart='return false;'></div>");
var TableBodyArea=MyTable.find('.TableBodyArea');
var TableHeadArea=MyTable.find('.TableHeadArea');
TableBody.data('TableBodyArea',TableBodyArea);
TableBody.data('TableHeadArea',TableHeadArea);

上面代代中紅色高亮 TableBody 為表主體, TableHead 為表頭
2.創建表頭
復制代碼 代碼如下:
TableBody.find('.header').clone().prependTo(TableHead);

TableBody 其實便是HTML模板Table , 將 .header 的行移到到表頭表格中作為表頭.
3.創建表主體
創建表主體,其實便是根據數據源及模板 循環創建每一行 , 這里用了 上篇文章提到的 Repeater 來創建, 詳細 請看用Javascript實現Repeater.
4.處理當列過多時橫向滾動條的問題
復制代碼 代碼如下:
TableBodyArea.scroll(function (){
var ml=0-parseInt(TableBodyArea.attr('scrollLeft'));
TableHead.css('margin-left',ml);
});

TableBodyArea 為TableBody外包裹的一個Div
5.如何實現單元格編輯
雙擊td時在td中動態插入一個文件本框為將td的innerHTML給文本框,在文本焦點失去時,將文本框值賦給td的innerHTML,將移除文本框 代碼如下:
復制代碼 代碼如下:
TableBody.find('td').live('dblclick',function(){
var td=$(this);
if(td.attr('editable')=='true')
{
var text=td.text();
var html="<input type='text' class='TdEditTextBox' value='"+$.trim(text)+"' />";
td.html(html);
td.addClass("tdediting");
//
$(this).find('.TdEditTextBox').focus().focus().focus().focus();
$(this).find('.TdEditTextBox').blur(function(){
var val=$(this).val();
td.html(val);
td.removeClass("tdediting");
});
}
});

6. 如何排序:
由時間問題請容我下回分解??!
源碼下載: /201007/yuanma/DataGrid.rar
作者:houfeng
出處:http://houfeng.cnblogs.com

JavaScript技術一個可綁定數據源的jQuery數據表格插件,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 天天躁躁水汪汪人碰人 | 亚洲妈妈精品一区二区三区 | 国产人成精品综合欧美成人 | bl被教练啪到哭H玉势 | 最近中文字幕2019国语4 | 色偷偷成人网免费视频男人的天堂 | 四虎影院2022 | 久久re热线视频国产 | 99爱在线精品视频免费观看9 | 久久婷婷五月免费综合色啪 | 欧洲老妇人bb | 一区二区视频在线观看高清视频在线 | 日本少妇无码精品12P | 国产精品自在在线午夜蜜芽tv在线 | 日韩无码在线 | 久草国产在线播放 | 女人张腿让男人桶免费 | 美女胸被男子强捏视频 | 色偷偷888欧美精品久久久 | 国产乱人精品视频AV麻豆 | 51vv视频社区 | 狠狠国产欧美在线视频 | 黄色三级在线观看 | 88蜜桃人妻无码精品系列 | 91传媒蜜桃香蕉在线观看 | 欧美亚洲韩日午夜 | 黄子佼81岁父亲现状曝光 | 东北嫖妓对白粗口 | 亚洲综合AV色婷婷五月蜜臀 | 久久亚洲精品专区蓝色区 | 国产精品久久高潮呻吟无码 | 口工漫画r18全彩啪啪 | 青草视频久久 | 浴室里强摁做开腿呻吟的漫画男男 | 战狼4在线观看完免费完整版 | 国产精品午夜福利在线观看 | 99精品视频免费观看 | 精品亚洲国产成AV人片传媒 | 日本一卡二卡三卡四卡无卡免费播放 | 亚洲视频国产 | 少妇大荫蒂毛多毛大 |