<asp:Repeater ID="rptfindData" runat="server">
<HeaderTemplate>
<tr>
<td>repeater中的自增</td>
<td>ID</td>
<td>Name</td>
<td>Sex</td>
<td>operation</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# Container.ItemIndex+1 %></td>
<td><%#Eval("ID") %></td>
<td>
<label id="lbl-Name-<%# Container.ItemIndex+1 %>" style="display: block"><%#Eval("Name") %></label>
<input id="txt-Name-<%# Container.ItemIndex+1 %>" type="text" value='<%#Eval("Name") %>' style="display: none;"/>
</td>
<td>
<label id="lbl-Sex-<%# Container.ItemIndex+1 %>" style="display: block"> <%#Eval("Sex").ToString() == "1" ? "男" : "女" %></label>
<div id="div-sex-<%# Container.ItemIndex+1 %>" style="display: none">
<%--<asp:RadioButton ID="male" Checked="True" GroupName="Gender" runat="server" Text="男" />
<asp:RadioButton ID="female" GroupName="Gender" runat="server" Text="女" />--%>
<input id="male-<%# Container.ItemIndex+1 %>" type="radio" value="1" name="gender-<%# Container.ItemIndex+1 %>" <%#Eval("Sex").ToString() == "1" ? "checked='checked'" : "" %> />男
<input id="female-<%# Container.ItemIndex+1 %>" type="radio" value="2" name="gender-<%# Container.ItemIndex+1 %>" <%#Eval("Sex").ToString() == "2" ? "checked='checked'" : "" %> />女
</div>
<%--<input id="txt-Sex-<%# Container.ItemIndex+1 %>" type="text" value='<%#Eval("Sex") %>' style="display: none"/>--%>
</td>
<td>
<label id="lbl-update-<%# Container.ItemIndex+1 %>" style="display: block" onclick="displayText(<%# Container.ItemIndex+1 %>)">update</label>
<label id="lbl-save-<%# Container.ItemIndex+1 %>" style="display: none" onclick="displayLabel(<%# Container.ItemIndex+1 %>,<%#Eval("ID") %>)">save</label>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</div>
</form>
</body>
</html>
<script type="text/javascript">
function displayText(id) {
$("#lbl-Name-" + id).css("display", "none");
$("#txt-Name-" + id).css("display", "block");
$("#lbl-Sex-" + id).css("display", "none");
$("#txt-Sex-" + id).css("display", "block");
$("#div-sex-" + id).css("display", "block");
$("#lbl-update-" + id).css("display", "none");
$("#lbl-save-" + id).css("display", "block");
}
function displayLabel(id, dataId) {
debugger;
$("#lbl-Name-" + id).css("display", "block");
$("#txt-Name-" + id).css("display", "none");
$("#lbl-Sex-" + id).css("display", "block");
$("#txt-Sex-" + id).css("display", "none");
$("#div-sex-" + id).css("display", "none");
$("#lbl-update-" + id).css("display", "block");
$("#lbl-save-" + id).css("display", "none");
var name = $("#txt-Name-" + id).val();
// var sexPD = $('').checked;
//var sex;
//if (sexPD) {
// sex = 1;
//} else {
// sex = 2;
//}
var sex = $("input:radio[name='gender-" + id + "']:checked").val();
//var sex = $("#txt-Sex-" + id).val();
//保存数据
$.ajax({
url: "/GridViewDataASHX.ashx",
type: "post",
async: false,
cache:false,
data: {
"name": name,
"sex": sex,
"id":dataId
},
success: function (data) {
if (data > 0) {
alert("成功!");
window.location.href = window.location.href;
} else {
alert("失败!");
}
}
});
}

是否还有更好的实现方式呢?

使用repeater实现gridview的功能的更多相关文章

  1. Repeater 和 GridView 添加序列号

    <tr><asp:Repeater ID="rptOfBrowerInfo" runat="server" >    <Heade ...

  2. aspnetpager+repeater+oracle实现分页功能

    一.设计原理阐述 数据查询分页,这个功能相信大家都很熟悉,通过数据库或其它数据源进行查询操作后,将获得的数据显示到界面上,但是由于数据量太大,不能一次性完全的显示出来,就有了数据分页的需求.这个需求在 ...

  3. asp.net 中Repeater和Gridview的区别

             Griview:              优点:1.GridView是从WebControl派生出来的,拥有WebControl样式属性,自身会被解析为table,其中的每一行会被 ...

  4. 分享一个我的JavaScript版GridView多功能表格

    GridView是什么? GridView是由Mr.Co开发的一套开源的多功能表格插件,主要用于让页面开发者在开发中节省拼接Table表格和操作Table表格相关复杂操作的开发成本与时间.开发人员可以 ...

  5. Repeater和Gridview前台显示行号的方法

    Repeater : Container.ItemIndex (行号从零开始,如果想改为从1开始,那么可以将以上的代码改为Container.ItemIndex + 1),见下示例: <asp: ...

  6. GridView分页功能的实现

    当GridView中显示的记录很多的时候,可以通过GridView的分页功能来分页显示这些记录.如果GridView是直接绑定数据库,则很简单:将"启动分页"打勾即可. 如果是用代 ...

  7. Repeater嵌套gridview

    前台:<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSour ...

  8. 【DevExpress v17.2新功能预告】增强ASP.NET GridView的功能

    在下一个主要版本v17.2中,我们将为DevExpress ASP.NET GridView添加一些优秀的新功能.在本文中为大家介绍的所有功能都可用于 GridView的ASP.NET WebForm ...

  9. 自己写的一个ASP.NET服务器控件Repeater和GridView分页类

    不墨迹,直接上代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...

随机推荐

  1. 3n+1问题

    猜想: 对于任意大于1的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半. 经过若干次这样的变换,一定会使n变为1.例如3->10->5->16->8->2-& ...

  2. C++Primer 第二章

    //1.程序尽量避免依赖于实现环境的行为.比如:如果将int的尺寸看成一个确定不变的已知值,那么这样的程序就称为不可移植的. typedef int int32; //使用类似的typedef,可以有 ...

  3. Leetcode: Combination Sum IV && Summary: The Key to Solve DP

    Given an integer array with all positive numbers and no duplicates, find the number of possible comb ...

  4. LED流水灯(二)

    记住看汇编的时候是红在上面 黑色在下面 startup.s 程序 ; MDK跑马灯实验; PRESERVE8               // 字节对齐关键词 ,汇编有8位对齐的要求,要添加 AREA ...

  5. cometd使用-bayeux协议(读法:贝叶)

    bayeux.createChannelIfAbsent("/**", new ServerChannel.Initializer() { @Override public voi ...

  6. String,StringBuffer,StringBuilder三者区别

    String:每次改变,String都会重新构造,内存指针都会改变 StringBuffer:主要用在全局变量中 StringBuilder:在线程内完成字符拼接,因为线程是不安全的,所以完成后可以丢 ...

  7. 夺命雷公狗ThinkPHP项目之----企业网站6之栏目的添加(主要用模型来验证字段)

    我们刚才的控制器已经写好了,那么我们现在就来完成我们的模型, 首先我们在Model目录下创建一个CategoryModel.class.php 代码如下: <?php namespace Adm ...

  8. 由ccf第一题引出的问题

    当时的情况是这样的,代码中需要用到一个较大的二维数组,但只要定义这个大二维数组编译就出错,无奈后来用malloc自己实现了类似二维数组的操作. 其中的b数组设为全局的或者静态的也都可以解决overfl ...

  9. 《zw版·delphi与halcon系列原创教程》hello,zw

    <zw版·delphi与halcon系列原创教程>hello,zw 按惯例,第一个程序是‘hello’ 毕竟,Halcon是专业的图像库,所以我们就不用纯文本版的,来一个专业版.Halco ...

  10. cf-282e

    “字典树”的变形,任意两数异或最大值,处理字典树的时候可以用递归,也可以用循环,下面有两个版本. C - Sausage Maximization Time Limit:2000MS Memory L ...