GridView跨页面多选
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GridView跨页多选._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView跨页面多选</title>
<script type="text/javascript">
//这是使用JavaScript
function Check(ck)
{
if(ck.checked)
{
form1.Hidden1.value += ","+ck.value;
}
else
{
form1.Hidden1.value = form1.Hidden1.value.replace(","+ck.value,"");
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333"
GridLines="None" Height="184px"
OnPageIndexChanging="GridView1_PageIndexChanging"
OnRowDataBound="GridView1_RowDataBound" PageSize="2" Width="515px">
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<Columns>
<asp:TemplateField HeaderText="选择">
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<input ID="ltName" runat="server" name="ltName" οnclick="Check(this)"
type="checkbox" value='<%# Eval("name") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="id" HeaderText="学生ID">
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="name" HeaderText="学生姓名">
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="sex" HeaderText="性别">
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="times" HeaderText="入学时间">
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
</Columns>
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<EditRowStyle BackColor="#999999" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:GridView>
<br />
<asp:Button ID="btnGet" runat="server" Text="获取选择内容" οnclick="btnGet_Click" />
<br />
<asp:Label ID="lbShow" runat="server"></asp:Label>
<br />
<input id="Hidden1" type="hidden" runat="server"/>
</div>
</form>
</body>
</html>
后台
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace GridView跨页多选
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bind();
}
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.GridView1.PageIndex = e.NewPageIndex;
Bind();
}
protected void btnGet_Click(object sender, EventArgs e)
{
lbShow.Text = Hidden1.Value.Replace(",", "<li>");
}
protected void Bind()
{
SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123456;database=Test;");
SqlDataAdapter da = new SqlDataAdapter("select * from students", con);
DataSet ds = new DataSet();
da.Fill(ds, "students");
this.GridView1.DataSource = ds.Tables["students"].DefaultView;
this.GridView1.DataBind();
}
//保证翻页时复选框仍然选中
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (Hidden1.Value.IndexOf(e.Row.Cells[2].Text) >= 0)
{
HtmlInputCheckBox box = (HtmlInputCheckBox)(e.Row.Cells[0].FindControl("ltName"));
box.Checked = true;
}
}
}
}
}
转载于:https://www.cnblogs.com/tiwlin/archive/2009/09/17/1568266.html
GridView跨页面多选相关推荐
- html word表格边框变成表格,word表格边框显示不全跨页面显示的解决方法
word表格是很多伙伴常会使用到的一款办公软件,那你晓得边框显示不全跨页面显示如何处理吗?如若不了解的话,就看看下文word表格边框显示不全跨页面显示的解决方法吧. word表格边框显示不全跨页面显示 ...
- layui.table(表格)跨页多选
layui版本:2.5.4 使用数据表格时可能会需要在翻页时保留各个页面选中行的信息,效果如下. 效果演示 实现思路 实现思路大致分为以下三步 1.定义两个全局变量用于保存选中行的id,以及当前页所有 ...
- layui表格中开启复选框后,怎么获取跨页勾选的全部数据,layui表格获取勾选的所有数据,获取跨页勾选数据的数量,如何预渲染让数据默认勾选上?
这个功能layui 本身可能没直接提供给我们相关的功能 ,需要自己写出来了 有几个疑点 可能要一一排查出来 核心点: 能不能有一个状态值 能判断当前行的数据 是否是勾选状态 然后就可以 一步一步 ...
- 如何在vue项目中,跨页面(跨路由)使用新手引导工具 Intro.js
文章目录 功能要求 使用Intro.js遇到的问题以及代码 1.不能跨路由 utils -> intro.js 2.要在页面引导所需显示的数据全部拿到且渲染完毕以后加载Intro.js intr ...
- MVVM跨页面数据传输
MVVM跨页面数据传输 一.MVVM是什么? MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点 低耦合.视图(View)可以独立于Model变化和修改,一个 ...
- js实现跨页勾选复选框
在这里插入代码片# 前台列表页面实现跨页勾选复选框 思路:分页是后台服务端分页.做不到实时性.所以在js中可以封装一个js Map,每勾选一个将勾选的主键放到Map中,取消勾选时将其从Map中移除.不 ...
- 跨页面传递参数与数据回填
开发工具与关键技术: VisualStudio 2015 mvc 作者:杨泽平 撰写时间:2019.7.12 跨页面回填,在回填方法里也是用的比较多的一种,他有区别于其他回填方法的就是,他需要在不同的 ...
- js 监听 安卓事件_百行代码实现js事件监听实现跨页面数据传输
百行代码实现js事件监听实现跨页面数据传输 使用场景 类似消息队列的使用场景,支持同页面和跨页面通信,发送消息和接收消息 技术原理 跨页面通信: 基于事件监听,通过监听 storage事件监听回调机制 ...
- [转]html5: postMessage解决跨域和跨页面通信的问题
[转]html5: postMessage解决跨域和跨页面通信的问题 参考文章: (1)[转]html5: postMessage解决跨域和跨页面通信的问题 (2)https://www.cnblog ...
- angularJs 跨控制器与跨页面传值
虽然网上概括了四种或更多的传值方式,但我现在用的顺手的就两种 首先要知道AngularJs可以构建一个单页面应用程序,所以我划分为跨控制器传值 和 跨页面传值 两类 1.跨控制器传值-- $rootS ...
最新文章
- VMware安装CentOS之三——CentOS网络设置及软件安装
- apache2.2配置php,PHP5+APACHE2.2配置_PHP教程
- onenote设置默认新建页面颜色非白色
- java路径Java开发中获得非Web项目的当前项目路径
- 程序的静态链接,动态链接和装载
- 半导体物理学习整理(一)
- 大数据兼云计算(王明龙)讲师-JAVA-DAY05-基本数据类型
- python爬虫数据寻找过程(解决爬虫异步导致AttributeError: 'NoneType' object has no attribute 'find_all'错误)
- 知识图谱算法岗位招聘要求总结
- 春秋战国时期灭了三个国家的陈国女人
- idea2018激活方式
- 兴趣专业测试软件,霍兰德职业兴趣测试 在线工具
- 白话空间统计之二十五:空间权重矩阵(四)R语言中的空间权重矩阵(5)完结篇:自然临近关系
- 任正非蜕变,华为新生
- WQ7033开发指南(基础篇)之1.0 开发环境搭建和编译
- Codeforces Round #645 (Div. 2) D - The Best Vacation 题解(二分+思维)
- iOS固件SHSH备份工具TinyUmbrella 5.00.12a更
- U盘启动盘安装系统,使用Diskpart命令对磁盘进行分区
- 网络入侵检测系统之Suricata(三)--日志代码详解
- 仙人掌之歌——权力的游戏(2)