GridView自定义分页导航
自己做的一个项目中所运用到的技术:|
<!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 id="Head1" runat="server">
<title>合作商信息维护</title>
<script language="javascript" type="text/javascript">
// 判断多选是否与选中项(没有选中的返回false)
function slcNo_click()
...{
if (document.form1.checkboxname.length)
...{
for (var i=0;i<document.form1.checkboxname.length;i++)
...{
if(document.form1.checkboxname[i].checked)
...{
return true;
}
}
}
else
...{
if(document.form1.checkboxname.checked)
...{
return true;
}
}
alert("请选择后再操作!");
return false;
}
// 鼠标经过改变行的颜色
if (!objbeforeItem)
...{
var objbeforeItem=null;
var objbeforeItembackgroundColor=null;
}
function ItemOver(obj)
...{
if(objbeforeItem)
...{
objbeforeItem.style.backgroundColor = objbeforeItembackgroundColor;
}
objbeforeItembackgroundColor = obj.style.backgroundColor;
objbeforeItem = obj;
obj.style.backgroundColor = "#B9D1F3";
}
//
// 多选的全选与取消
function checkJs(boolvalue)
...{
if(document.all.checkboxname.length>1)
...{
for(var i=0;i<document.all.checkboxname.length;i++)
...{
document.all.checkboxname[i].checked = boolvalue;
}
}
else
document.all.checkboxname.checked = boolvalue;
}
//
// 只有全部选中时“全选”选中
function SingleCheckJs()
...{
var flag1=false;
var flag2=false;
if (document.form1.checkboxname.length)
...{
for (var i=0;i<document.form1.checkboxname.length;i++)
...{
if(document.form1.checkboxname[i].checked)
flag1 = true;
else
flag2 = true;
}
}
else
...{
if(document.form1.checkboxname.checked)
flag1 = true;
else
flag2 = true;
}
if(flag1==true&&flag2==false)
document.getElementById("chk").checked = true;
else
document.getElementById("chk").checked = false;
}
</script>
<script type="text/javascript" language="javascript" src="Selecttime/calendar.js"></script>
</head>
<body>
<form id="form1" runat="server">
<table id="Table10" cellSpacing="0" cellPadding="0" border="0" Style="z-index: 103;
left: 21px; position: absolute; top: 20px; width: 90%;">
<tr>
<td bgColor="#fafafa">
<FIELDSET style="BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 45px"><LEGEND><FONT face="宋体" size="2">合作商查询</FONT></LEGEND>
<table id="Table1" height="40" cellSpacing="0" cellPadding="0" width="100%" align="center"
border="0">
<tr>
<td height="30"><FONT face="宋体"> </FONT><FONT face="宋体"> 合作商名称
<asp:textbox id="TStfName" runat="server" BorderStyle="Groove" Width="144px"></asp:textbox> </FONT></td>
</tr>
<tr>
<td style="height: 30px"> <FONT face="宋体"> 添加时间 </FONT>
<asp:textbox id="StartTime" onfocus="setday(this)" runat="server" Width="159px"></asp:textbox> 到
<asp:textbox id="EndTime" onfocus="setday(this)" runat="server" Width="160px"></asp:textbox> <FONT face="Times New Roman"> </FONT></td>
</tr>
<TR>
<TD height="30"><FONT face="宋体"> <FONT face="宋体">
<asp:button id="SelectClient" runat="server" Text="搜 索" onclick="SelectClient_Click"></asp:button> </FONT></FONT></TD>
</TR>
</table>
</FIELDSET>
</td>
</tr>
</table>
<table cellpadding="0" cellspacing="0" border="0" Style="z-index: 103;
left: 21px; position: absolute; top: 140px; width: 90%;">
<tr bgColor="#6B696B">
<td align="center" style="width: 85%">
<asp:GridView ID="GridView1" runat="server" Width="100%" CellPadding="4" ForeColor="#333333"
AutoGenerateColumns="False" AllowPaging="True" BorderColor="Silver"
BorderStyle="Solid" BorderWidth="1px" OnRowDataBound="GridView1_RowDataBound"
ShowFooter="false" EmptyDataText="没有数据记录!!" AllowSorting="True" OnSorting="GridView1_Sorting">
<Columns>
<asp:BoundField HeaderText="编号" DataField="id" Visible="False" />
<asp:TemplateField HeaderText="<input type='checkbox' id='chk' name='chk' οnclick='checkJs(this.checked);' />全选">
<ItemTemplate>
<input type="checkbox" id="checkboxname" name="checkboxname" value='<%# DataBinder.Eval(Container.DataItem, "StfId")%>' onclick='SingleCheckJs();' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="序号">
<ItemTemplate>
<%# (Container.DataItemIndex+1).ToString()%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="充值">
<ItemTemplate>
<%#GetClientVisitInfoShowCmpMoney(DataBinder.Eval(Container.DataItem,"StfId"),DataBinder.Eval(Container.DataItem,"StfName"))%>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="公司名称" DataField="StfCmpName" SortExpression="StfCmpName"/>
<asp:BoundField HeaderText="登陆名" DataField="StfName" SortExpression="StfName" />
<asp:BoundField HeaderText="帐户金额" DataField="StfCmpMoney" SortExpression="StfCmpMoney" />
<asp:BoundField HeaderText="帐户Q币" DataField ="StfQbmoney" SortExpression="StfQbmoney" />
<asp:BoundField HeaderText="合作日期" DataField="StfRegisterTime" HtmlEncode="False" SortExpression="StfRegisterTime" />
<asp:TemplateField HeaderText="操作" >
<ItemTemplate>
<%#GetClientVisitInfoShowAnchorStr(DataBinder.Eval(Container.DataItem,"StfId"),DataBinder.Eval(Container.DataItem,"StfName"))%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<EditRowStyle BackColor="#999999" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<PagerSettings Visible="False" />
<HeaderStyle Font-Bold="False" Font-Italic="False" />
</asp:GridView>
</td>
</tr>
<tr>
<td align="center" style="height: 25px; width: 569px;">
<asp:LinkButton ID="btnFirst" CommandArgument="first" OnClick="PagerButtonClick"
runat="server">首 页</asp:LinkButton> <asp:LinkButton ID="btnPrev" CommandArgument="prev" OnClick="PagerButtonClick" runat="server">上一页</asp:LinkButton>
<asp:LinkButton ID="btnNext" CommandArgument="next" OnClick="PagerButtonClick" runat="server">下一页</asp:LinkButton>
<asp:LinkButton ID="btnLast" CommandArgument="last" OnClick="PagerButtonClick" runat="server">尾 页</asp:LinkButton>
<asp:Label ID="LblCurrentIndex" runat="server"></asp:Label>
<asp:Label ID="LblPageCount" runat="server"></asp:Label>
<asp:Label ID="LblRecordCount" runat="server"></asp:Label>
跳转到第<asp:DropDownList ID="ddlCurrentPage" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>页</td> <tr>
<td style="width: 569px">
操作:
<asp:Button ID="Button3" runat="server" OnClick="Button3_Click" Text="删除合作商" />
</td>
</tr>
</table>
</form>
</body>
</html>
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class StfCmpManager : System.Web.UI.Page
...{
protected void Page_Load(object sender, System.EventArgs e)
...{
string StfRight = "";
// 在此处放置用户代码以初始化页面
if (Session["UserId"] == null)
...{
Response.Write("<script language='javascript'>alert('工作超时,请重新登录。');top.window.location='default.aspx';</script>");
return;
}
else
...{
StfRight = Session["UserRight"].ToString().Trim();
if (!this.IsPostBack)
...{
if (StfRight != "7" && StfRight != "8")
...{
Response.Write("<script language='javascript'>alert('你没有权限察看此页。');top.window.location='default.aspx';</script>");
return;
}
GridViewBind("");
}
}
}
private void GridViewBind(string Sqlsort)
...{
string where = string.Empty;
where = "and a.StfRight='6' and a.StfId=b.Stfid";
if (TStfName.Text.Trim() != "")
...{
where += " and a.StfCmpName like '%" + TStfName.Text.Trim() + "%'";
}
if (StartTime.Text.Trim() != "")
...{
where += " and a.StfRegistertime >= '" + StartTime.Text + "'";
}
if (EndTime.Text.Trim() != "")
...{
where += " and a.StfRegistertime <= '" + EndTime.Text + "'";
}
if (where != string.Empty)
...{
where = "Where " + where.Substring(4);
}
string connStr = ConfigurationManager.AppSettings.Get("DataConnectionString");
string SqlStr = "Select a.StfId as StfId,a.StfName as StfName,a.StfRealName as StfRealName,a.StfCmpName as StfCmpName,b.StfCmpMoney as StfCmpMoney,b.StfQbmoney as StfQbmoney,a.StfRegistertime as StfRegistertime From TStafferInfo a,TCmpMoney b " + where + Sqlsort;
//Response.Write(SqlStr);
//Response.End();
DataSet ds = new DataSet();
try
...{
SqlConnection conn = new SqlConnection(connStr);
if (conn.State.ToString() == "Closed") conn.Open();
SqlDataAdapter da = new SqlDataAdapter(SqlStr, conn);
da.Fill(ds, "TStafferInfo");
if (conn.State.ToString() == "Open") conn.Close();
GridView1.DataSource = ds.Tables[0].DefaultView;
GridView1.DataBind();
LblCurrentIndex.Text = "第 " + (GridView1.PageIndex + 1).ToString() + " 页";
LblPageCount.Text = "共 " + GridView1.PageCount.ToString() + " 页";
LblRecordCount.Text = "总共 " + ds.Tables[0].Rows.Count.ToString() + " 条";
if (ds.Tables[0].Rows.Count == 0)
...{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
LblCurrentIndex.Visible = false;
LblPageCount.Visible = false;
LblRecordCount.Visible = false;
}
else if (GridView1.PageCount == 1)
...{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
}
// 计算生成分页页码,分别为:"首 页" "上一页" "下一页" "尾 页"
btnFirst.CommandName = "1";
btnPrev.CommandName = (GridView1.PageIndex == 0 ? "1" : GridView1.PageIndex.ToString());
btnNext.CommandName = (GridView1.PageCount == 1 ? GridView1.PageCount.ToString() : (GridView1.PageIndex + 2).ToString());
btnLast.CommandName = GridView1.PageCount.ToString();
//
this.ddlCurrentPage.Items.Clear();
for (int i = 1; i <= this.GridView1.PageCount; i++)
...{
this.ddlCurrentPage.Items.Add(i.ToString());
}
this.ddlCurrentPage.SelectedIndex = this.GridView1.PageIndex;
}
catch (Exception ex)
...{
Response.Write("数据库错误,错误原因:" + ex.Message);
Response.End();
}
}
protected void PagerButtonClick(object sender, EventArgs e)
...{
GridView1.PageIndex = Convert.ToInt32(((LinkButton)sender).CommandName) - 1;
GridViewBind("");
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
...{
e.Row.Attributes["onmouseover"] = "ItemOver(this)";
}
protected void Button1_Click(object sender, EventArgs e)
...{
Response.Write(Request.Form.Get("RadioName"));
}
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
...{
string sql = "";
if (ViewState["DataConnectionString"] == null || ViewState["DataConnectionString"].ToString().CompareTo("") == 0)
...{
ViewState["DataConnectionString"] = " desc";
}
else
ViewState["DataConnectionString"] = "";
sql = " order by " + e.SortExpression + ViewState["DataConnectionString"];
GridViewBind(sql);
//DataFormatString="{0:yyyy年MM月dd日 hh时mm分ss秒}"
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
...{
this.GridView1.PageIndex = this.ddlCurrentPage.SelectedIndex;
GridViewBind("");
}
private bool CheckAddClientInfoForm()
...{
int Tag = 0;
if (Tag == 1)
...{
Response.Write("<script>alert('请将带*项填写!')</script>");
return false;
}
if (Tag == 2)
...{
Response.Write("<script>alert('两次输入密码不同')</script>");
return false;
}
else
...{
return true;
}
}
public string GetClientVisitInfoShowAnchorStr(object StfId, object StfName)
...{
string AnchorStr = "<a href='#'><Div οnclick='javascript:window.open("TManageModify.aspx?StfId=" + StfId + "&StfName=" + StfName + "","","height=280,Width=600,scrollbars=yes,resizable=yes,status=no")'>修改</Div></a>";
return AnchorStr;
}
public string GetClientVisitInfoShowCmpMoney(object StfId, object StfName)
...{
string AnchorStr = "<a href='#'><Div οnclick='javascript:window.open("StfCmpMoneyInfo.aspx?StfId=" + StfId + "&StfName=" + StfName + "","","height=250,Width=500,scrollbars=yes,resizable=yes,status=no")'>充值</Div></a>";
return AnchorStr;
}
protected void Button3_Click(object sender, EventArgs e)
...{
string str = "";
string[] ckb = null;
str = Request.Form.Get("checkboxname");
ckb = str.Split(new char[] ...{ ',' });
for (int i = 0; i < ckb.Length; i++)
...{ //帐户和信息同时删除
string StrSql = " Delete TStafferInfo where StfId ='" + ckb[i] + "'";
String StrSql_d = " Delete TCmpMoneyInfo where StfId ='" + ckb[i] + "'";
SqlConnection Conn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings.Get("DataConnectionString"));
SqlCommand Cmd = new System.Data.SqlClient.SqlCommand(StrSql, Conn);
SqlCommand Cmd_d = new System.Data.SqlClient.SqlCommand(StrSql_d, Conn);
Conn.Open();
SqlTransaction Trans = Conn.BeginTransaction();
try
...{
Cmd.Transaction = Trans;
Cmd_d.Transaction = Trans;
Cmd.ExecuteNonQuery();
Cmd_d.ExecuteNonQuery();
Trans.Commit();
}
catch (Exception Err)
...{
Trans.Rollback();
Response.Write(Err.Message);
}
}
Response.Write("<script>window.close();alert('操作员删除成功!');</script>");
GridViewBind("");
}
protected void SelectClient_Click(object sender, EventArgs e)
...{
GridViewBind("");
}
}
GridView自定义分页导航相关推荐
- GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)
今天要为网站做一个文章列表,发现GridView的分页样式很难看,于是结合网上的例子,自己做了一个.不是很美观,不过还是很实用的,先看下效果吧,如图(1).演示地址http://www.veryam. ...
- GridView自定义分页
第一步:设置GridView的AllowPaging="True" 和 PageSize="20" 第二步:创建GridView的分页模板 <PagerT ...
- GridView数据库分页+自定义分页导航(二):自定义分页导航。首页、上一页、下一页、尾页和跳转
完成图: 先进入模板编辑模式,选择[PagerTemplate],添加自己所需的导航控件 列入这样的,上一页和下一页和GO使用[LinkButton],也可使用其他的控件,[注:LinkButton ...
- showModalDialog 页面上GridView的分页问题
2019独角兽企业重金招聘Python工程师标准>>> 在showModalDialog打开的页面上有个GridView控件,GridView中有分页导航,点击导航按钮时,会在sho ...
- 用Gridview和ObjectDataSource轻松实现自定义分页
一.什么是自定义分页 自定义分页是与默认分页相对应的.默认分页指一次检索出所有数据并将其绑定到数据绑定控件中,虽然该控件只能一页一页显示这些数据,但是所有数据其实都已经被绑定到控件上了.自定义分页的 ...
- 上接扩展GridView控件(10) - 自定义分页样式
5.重写OnRowCreated以实现自定义分页样式 /// <summary> /// OnRowCreated // ...
- ASP.NET技巧:GridView控件自定义分页详解第一页
ASP.NET技巧:GridView控件自定义分页详解 日期:2007年9月11日 作者: 查看:[大字体 中字体 小字体] <script src="../gg/info468.js ...
- ASP.NET 2.0在SQL Server 2005上自定义分页
这篇文章讲述了如何利用SQL Server 2005的新特性来简单高效的实现分页.对于那些暂时还没用到SQL Server2005的人们,请看在大规模数据中的高效分页方法.如果需要,这篇文章会补上这里 ...
- DataList自定义分页
Asp.net里头,像DataList,Repeater,DataGrid,GridView,FormView包括Asp.net3.5中的ListView这几种服务器数据绑定控件,是在开发中经常需要用 ...
最新文章
- android 上拉隐藏布局,Recycleview上拉隐藏与下拉显示
- 数据库综合设计java_JAVA程序综合设计数据库设计_
- 公务员要过英语六级吗计算机,报考2020年国家公务员考试,必须要过英语四六级吗?...
- 为什么企业开发者要关心Silverlight
- eval() python_python的eval和exec的区别与联系
- jsp文字上下居中显示_如何让任务栏完全透明,图标居中
- Freeswitch与外域IP对接之incoming call
- 全三轨磁条卡读写器|写卡器MSR606的驱动安装与Demo软件测试操作指南
- 数据分析与R语言视频教程
- 刘毅5000词汇_不熟词汇整理_lesson_15 and part_1
- java实现中文转拼音包含声调
- c语言二维数组学习,C语言学习之二维数组的传参
- 聚石塔,云鼎,多多云-----有一种坑叫盲打
- 2.10 MapReduce文件合并
- 原生对象、内置对象、宿主对象的区别
- java用于选择结构的关键字_Java结构
- 简单的集装箱号码识别
- 西门子200SMART(六)数据块
- 元宇宙012 | 世界人工智能大会之元宇宙论坛:技术篇
- 素描原理在PS鼠绘实物中的应用