亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

asp.net GridView 中增加記錄的方法

2024-07-10 13:20:40
字體:
來源:轉載
供稿:網友
大多數人建議用 FormView 來完成增加記錄的功能,但是 FormView 和 GridView 不是同一個表格,所以無法在同一個頁面的同一個表格中顯示。如果故意將 FormView 或自己的一堆于用新增功能的控件使用普通的表格組裝起來,那么會碰到一個很麻煩的問題,即兩個表格的列寬如何協調一致,大多數情況下,大家在做表格的時候,表格中各列的寬度都是自動調整的,所以強行指定寬度在很多情況下并不適用。
通過實踐,想出了一種辦法,主要步驟如下所示:
1) 在 GridView 的 EmptyDataView 中,放置一個普通的Html Table,以便在GridView綁定的數據源中無數據時依舊顯示表頭(如果數據源為返回的數據行數為0,GridView默認是不顯示表頭的),假設 ID 為 tbHeader,它的作用是下面用于新增功能的 tbForm 的各列控件提供說明(充當表頭);
2)在 GridView 下面,放置一個普通的 HTML 表格,其列數和 GridView 中定義的列數保持一致,但行數只有一行,然后在此表格的各列中放入用于新增功能的各個控件(如 TextBox等),假設此表格的 ID 為 tbForm
3)在頁面中加入一段客戶端腳本,以便使頁面展示到客戶端時,利用 Javascript 將兩個表格強行合并到一起,這樣就可以將只有一行的 tbForm 合并到 GridView中,因此 GridView 的最下面多出一行,其中有 tbForm 表格中定義的輸入控件和“添加”鏈接(按鈕),主要代碼(JavaScript)如下:
function MergeTable(source,dest)
{
var row;
var cell;
var sourceTb = document.all(source);
var destTb = document.all(dest);
for (var i=0; i<sourceTb.rows.length; i++)
{
row = document.createElement("TR");
for (var j=0; j<sourceTb.rows(i).cells.length; j++)
{
cell = document.createElement("TD");
row.appendChild(cell);
//復制對象
for(k=0;k<sourceTb.rows(i).cells(j).all.length;k++)
cell.appendChild(sourceTb.rows(i).cells(j).all.item(k));
}
destTb.tBodies(0).appendChild(row);
}
for (var i=sourceTb.rows.length-1; i>=0; i--)
{
sourceTb.deleteRow(i)
}
}
function ChangeTableLayout()
{
if(document.all('tbHeader') == null)
MergeTable('tbForm','');
else
MergeTable('tbForm','tbHeader');
}
ChangeTableLayout();
如果 GridView 綁定時沒有數據,將不顯示其中定義的各列,而只顯示 EmptyDataView 中的 tbHeader,這時要合并 tbHeader 和 tbForm。如果 GridView 綁定時包含數據,則不會顯示 EmptyDataView(當然也不會顯示其中的 tbHeader),但這時會顯示 GridView 中定義的各個列,因此只需將 GridView 本身和 tbForm 合并即可。 GridView 的客戶端ID可以用GridView.ClientID來獲取。
服務器端很容易知道 GridView 綁定后是否包含數據,但對于客戶端來說,不容易檢查,一個簡單的作法就是檢查頁面中有沒有 tbHeader 對象(如果有,則說明表格沒有數據,如果無此對象,表示 GridView 中包含數據... 好啰嗦)
4)如果是 AJAX 環境,上述腳本有可能不被執行,可以調用 Sys.Application.load.add ( JavaScriptFunction) 來強制執行腳本,來合并表格,主要代碼如下(C#):
ScriptManager myScriptManager = ScriptManager.GetCurrent(Page);
if (myScriptManager.IsInPartialRenderingMode)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "ShowFullTable1", "ChangeTableLayout();/n", true);
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "ShowFullTable2", "Sys.Application.load.add (ChangeTableLayout);/n", true);
}
注:上述代碼中的 ChangeTableLayout 為客戶端腳本函數的名稱,其中調用第3步驟中的代碼,上述代碼在 Atlas 中通過,在 ASP.NET AJAX Beta 上尚末測試。
另:為了更能說明上文代碼的效果,我抓了一個截圖,圖中包括表頭在內的前三行就是 GridView,最下面一行其實來自于另一個表格,在客戶端強制合并后,顯示效果就是這樣,看起來象是一個表格。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产福利精品av综合导导航| 日韩在线精品视频| 国产精品九九九| 成人日韩在线电影| 欧美丰满少妇xxxxx做受| 国产精品视频成人| 色悠久久久久综合先锋影音下载| 亚洲国产精品一区二区久| 亚洲欧洲视频在线| www.久久久久久.com| 国产精品成熟老女人| 亚洲欧美日韩天堂| 欧美成人亚洲成人日韩成人| 91在线视频成人| 日韩av在线高清| 国产成人精品网站| 成人网在线免费观看| 亚洲自拍欧美色图| 亚洲精品资源美女情侣酒店| 中文字幕亚洲图片| 一区二区成人av| 国产男女猛烈无遮挡91| 国产精品久久久久久久久久免费| 亚洲白拍色综合图区| 亚洲欧美中文日韩v在线观看| 日韩av在线不卡| 亚洲色图五月天| 亚洲欧洲av一区二区| 欧洲成人在线视频| 国产精品扒开腿做| 日产精品久久久一区二区福利| 日韩经典第一页| www.亚洲一区| 亚洲无限av看| 911国产网站尤物在线观看| 久久av红桃一区二区小说| 欧美老女人在线视频| 久久精品91久久香蕉加勒比| 91极品女神在线| 成人免费视频在线观看超级碰| 亚洲欧美在线看| 久久免费视频这里只有精品| 欧美性xxxx极品高清hd直播| 国产+人+亚洲| 久久久久久久电影一区| 国产成人av网| 日韩免费在线电影| 欧美大成色www永久网站婷| 久久精品国产欧美激情| 欧美国产一区二区三区| 国产精品爽爽ⅴa在线观看| 久久久久久综合网天天| 亚洲第五色综合网| 欧美亚洲成人xxx| 日韩欧美国产一区二区| 国产成人97精品免费看片| 国产成人免费91av在线| 亚洲码在线观看| 国产午夜精品视频| 自拍偷拍亚洲区| 欧美性生活大片免费观看网址| 九九热精品视频| 成人黄色免费在线观看| 亚洲美女精品久久| 亚洲片av在线| 在线中文字幕日韩| 日韩中文字幕第一页| 国产日韩精品电影| 国产热re99久久6国产精品| 97色在线观看免费视频| 久久久999精品| 欧美大尺度激情区在线播放| 亚洲日韩欧美视频一区| 久久国产精品亚洲| 中文字幕无线精品亚洲乱码一区| 中文字幕视频一区二区在线有码| 国产精品情侣自拍| 日韩小视频在线观看| 亚洲色图35p| 米奇精品一区二区三区在线观看| 一本色道久久88综合亚洲精品ⅰ| 亚洲欧美精品伊人久久| 欧美日韩一区免费| 久久久精品国产一区二区| 国产一区二区三区高清在线观看| 久久久久久九九九| 97视频免费看| 久久久999国产| 欧美黑人性视频| 亚洲日韩中文字幕在线播放| 国产精品久久久久久久久粉嫩av| 精品性高朝久久久久久久| 青青青国产精品一区二区| 中文字幕精品一区二区精品| www.美女亚洲精品| 欧美一性一乱一交一视频| 日韩中文在线不卡| 国产精品人成电影在线观看| 色妞久久福利网| 久久国产精品久久国产精品| 日韩国产欧美精品在线| 欧美第一黄网免费网站| 浅井舞香一区二区| 国产精品成人久久久久| 亚洲天堂av在线免费观看| 欧美性猛交xxxx免费看漫画| 国产综合视频在线观看| 欧美精品一区在线播放| 久久国产精品久久久久久久久久| 国产视频亚洲精品| 久久亚洲精品中文字幕冲田杏梨| 国产精品久久久久久久av大片| 亚洲高清免费观看高清完整版| 国产成人在线亚洲欧美| 国产在线a不卡| 羞羞色国产精品| 欧美中文字幕在线| 狠狠躁夜夜躁人人躁婷婷91| 国产精品99免视看9| 欧美黑人性生活视频| 亚洲自拍偷拍色片视频| 欧美日韩一区二区在线| 中文欧美在线视频| 亚洲天堂男人天堂| 欧美另类极品videosbestfree| 欧洲美女免费图片一区| 国产欧美欧洲在线观看| 久久久久久久一| 久久久久久亚洲精品中文字幕| 亚洲欧美综合v| 国产综合色香蕉精品| 亚洲自拍偷拍色片视频| 欧美性猛交xxxx富婆| 91高潮在线观看| 97香蕉超级碰碰久久免费软件| 欧美日韩成人在线观看| 欧美国产乱视频| 欧美激情免费视频| 亚洲人成人99网站| 日本sm极度另类视频| 欧美日韩中文字幕综合视频| 成人美女av在线直播| 欧美日韩午夜视频在线观看| 亚洲美女av在线播放| 欧洲成人性视频| 日韩欧中文字幕| 成人免费视频网址| 九九热这里只有精品免费看| 日韩av有码在线| 欧美一区视频在线| 亚洲视频免费一区| 91久久精品一区| 亚洲国产日韩精品在线| 精品国产欧美成人夜夜嗨| 亚洲成人激情视频| 亚洲人成在线观看网站高清| 亚洲欧美日韩综合| 亚洲欧洲视频在线| 最近2019中文字幕在线高清| 亚洲激情在线观看视频免费| 精品久久久香蕉免费精品视频| 欧美日韩人人澡狠狠躁视频| 国产亚洲精品久久久| 日本午夜人人精品|