自己做的一个项目中所运用到的技术:|
1. 日历控件(带时分秒)
2. GridView 批量删除,自定义分页,定位页码
3. GridView 修改
4. GridView 鼠标经过改变行的颜色
效果如下:

HTML:

<% @ Page Language = " C# " AutoEventWireup = " true " CodeFile = " StfCmpManager.aspx.cs " Inherits = " StfCmpManager " %>


<! 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 = " 宋体 " >& nbsp; </ FONT >< FONT face = " 宋体 " >& nbsp;合作商名称

< asp:textbox id = " TStfName " runat = " server " BorderStyle = " Groove " Width = " 144px " ></ asp:textbox >& nbsp; </ FONT ></ td >

</ tr >

< tr >

< td style = " height: 30px " >& nbsp; < FONT face = " 宋体 " > 添加时间 </ FONT >

< asp:textbox id = " StartTime " onfocus = " setday(this) " runat = " server " Width = " 159px " ></ asp:textbox >& nbsp;到

< asp:textbox id = " EndTime " onfocus = " setday(this) " runat = " server " Width = " 160px " ></ asp:textbox >& nbsp; & nbsp; & nbsp; < FONT face = " Times New Roman " >& nbsp; & nbsp; & nbsp; </ FONT ></ td >

</ tr >

< TR >

< TD height = " 30 " >< FONT face = " 宋体 " >& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; < FONT face = " 宋体 " >

< asp:button id = " SelectClient " runat = " server " Text = " 搜 索 " onclick = " SelectClient_Click " ></ asp:button >& nbsp; & nbsp; & nbsp; </ 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 >& nbsp; < 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 " >

& nbsp;操作:

< asp:Button ID = " Button3 " runat = " server " OnClick = " Button3_Click " Text = " 删除合作商 " />

</ td >

</ tr >

</ table >

</ form >

</ body >

</ html >
CS:

using System;

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("");

}


}

本文由来源 21aspnet,由 javajgs_com 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。