代码

 <script runat="server">
protectedvoid Button1_Click(object sender, System.EventArgs e)
{
GridView1.DataSource = GetData();
GridView1.DataBind();
} protectedvoid Button2_Click(object sender, System.EventArgs e)
{
string s = String.Empty;
for (int i =; i <; i++)
{
for (int j =; j <; j++)
{
s = s +"<li>第 "+ i.ToString() +" 行第 "+ j.ToString() +" 列的值是:"+ Request.Form["txt"+ i.ToString() +"_"+ j.ToString()];
}
}
ret.Text = s;
// 以下代码只是为了实现在表格里面保留原来的值,如果不需要则可以删除。
GridView1.DataSource = GetData();
GridView1.DataBind();
} protectedvoid GridView1_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
System.Data.DataRowView dv = (System.Data.DataRowView)e.Row.DataItem;
for (int i =; i < e.Row.Cells.Count; i++)
{
e.Row.Cells[i].Attributes.Add("onclick", "showEdit("+ e.Row.RowIndex.ToString() +","+ i.ToString() +")");
e.Row.Cells[i].Text ="<input onblur='lostfocus(this)' name='txt"+ e.Row.RowIndex.ToString() +"_"+ i.ToString() +"' readonly='readonly' class='noborder' value='"+ dv[i].ToString() +"'/>";
}
}
} private System.Data.DataTable GetData()
{
System.Data.DataTable dt =new System.Data.DataTable();
for (int i =; i <; i++)
{
dt.Columns.Add(new System.Data.DataColumn("", typeof(System.String)));
} for (int i =; i <; i++)
{
dt.Rows.Add(dt.NewRow());
for (int j =; j <; j++)
{
dt.Rows[i][j] = Request.Form["txt"+ i.ToString() +"_"+ j.ToString()];
}
}
return dt;
} </script> <html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<style type="text/css">
.noborder{border-width: 0px;margin:2px;}
.hasborder{border-width: 2px;}
</style> <script type="text/javascript">
function showEdit(r, c) {
document.forms[].elements["txt"+ r +"_"+ c].readOnly =false;
document.forms[].elements["txt"+ r +"_"+ c].className ='hasborder';
document.forms[].elements["txt"+ r +"_"+ c].select();
}
function lostfocus(o) {
o.className ='noborder'
o.readOnly =true;
}
</script> </head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" ShowHeader="false" OnRowDataBound="GridView1_RowDataBound">
</asp:GridView>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="加载表格"/>
<asp:Button ID="Button2" runat="server" Text="保存数据" OnClick="Button2_Click"/>
<asp:Label ID="ret" runat="server"></asp:Label>
</form>
</body>
</html>
 

【转】GridView 加载空行并点击编辑每一个单元格的更多相关文章

  1. 【转】Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址

    Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址 关注finddreams,一起分享,一起进步: http://blog.csdn.net/finddr ...

  2. cesium加载gltf模型点击以及列表点击定位弹窗

    前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 之 ...

  3. JS事件 加载事件(onload)注意:1. 加载页面时,触发onload事件,事件写在<body>标签内。 2. 此节的加载页面,可理解为打开一个新页面时。

    加载事件(onload) 事件会在页面加载完成后,立即发生,同时执行被调用的程序. 注意:1. 加载页面时,触发onload事件,事件写在<body>标签内. 2. 此节的加载页面,可理解 ...

  4. gridview根据条件来改变行的颜色以及改变单元格的颜色。

    gridview根据条件来改变行的颜色以及改变单元格的颜色. 通过在RowDataBound事件中写代码来实现,见代码. protected void GridView1_RowDataBound(o ...

  5. js实现点击修改按钮之后单元格变成可编辑状态

    主要实现原理: 每一行有一个修改按钮 点击修改之后,获取行对象,通过行对象再获取行中单元格数组.然后把每一个单元格中的innerHTML替换成input输入框,并赋值value=原来单元格中的内容,鼠 ...

  6. Developer Express控件gridcontrol中gridView的某一个单元格是否可以自由输入

    场景:在Developer Express控件gridcontrol中的gridView中,当医生开的临时医嘱的医嘱类型为"中草药","计价总量"单元格不可以自 ...

  7. 利用LruCache为GridView加载大量本地图片完整示例

    MainActivity如下: package cc.testlrucache; import android.os.Bundle; import android.widget.GridView; i ...

  8. 用Volley让GridView加载网络图片

    一.布局文件 总共两个布局文件,一个是GridView,还有一个是GridView的item,是NetworkImageView和TextView activity_main.xml <Rela ...

  9. ArcGIS API for JS4.7加载FeatureLayer,点击弹出信息并高亮显示

    我加载的是ArcGIS Server本地发布的FeatureService,ArcGIS API for JS4.7记载FeatureLayer时,在二维需要通过代码启用WebGL渲染,在三维模式下, ...

随机推荐

  1. Charles的HTTPS抓包方法及原理分析

    原文地址:http://www.jianshu.com/p/870451cb4eb0 背景 作为移动平台的RD,项目开发过程中一项比较重要的甩锅技能——抓包应该大家都比较熟悉了,毕竟有些bug可能是由 ...

  2. SpringBoot项目部署进阶

    一.war包部署 通过“云开发”平台初始化的SpringBoot项目默认采用jar形式打包,这也是我们推荐的方式.但是,因为某些原因,软件需求方特别要求用war形式打包,我们该怎么做? 1.项目尚未开 ...

  3. LINQ 学习之筛选条件

       从list 里遍历出 id="DM" 且 code="0000" 的数据 var tes1= from u in list.where u.ID == & ...

  4. 【Cf #502 H】The Films(莫队)

    题面的简述:总共有$m$种书,书架上共有$n$本书,给出$n$本书的种类,并有$Q$个询问,每次询问给出$l, r, k$.每次询问时都会先出现$k * m$本书,每种书各$k$本,然后再加入书架上的 ...

  5. 20135319zl字符集报告

    字符集实验 ASCII 首先,查找ZHULI五个字符对应的ASCII码,5a 48 55 4c 49. 然后,用vim打开一个空文档,按下":",输入%!xxd 然后,输入 000 ...

  6. MySQL使用笔记(八)统计函数和分组数据记录查询

    By francis_hao    Dec 17,2016 统计函数数据记录查询 统计函数 统计函数 描述 count() count(*):统计表中记录条数(包括NULL值字段) count(fie ...

  7. 清除.svn文件(windows & linux)

    如何清除文件夹中的.svn信息 1:来由 当需要在某个svn版本控制下添加某个包时, 常常是在另一个版本控制下sync过来, 但这是这个包是在别的版本控制下, 每个目录下都有版本控制文件.svn, 如 ...

  8. 【Asp.net入门3-02】使用jQuery-jQuery 入门

    下面的几小节将介绍jQuery的基础知识.如前所述,不可能仅仅通过一章的内容详细介绍jQuery, 但可以向你说明如何对HTML文档中的内容执行简单的操作,以及更重要的,如何逐步实现本书其他 部分的示 ...

  9. Python 字符串前面加u,r,b的含义

    1.字符串前加 u 例:u"我是含有中文字符组成的字符串." 作用: 后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时 ...

  10. Linux运维一:生产环境CentOS6.6系统的安装

    CentOS 6.6 x86_64官方正式版系统(64位)下载地址 系统之家:http://www.xitongzhijia.net/linux/201412/33603.html 百度网盘:http ...