截圖:
頁面:
- <body>
- <form id="form1" runat="server">
- <table id="tt">
- </table>
- </form>
- </body>
引用的JS:
- <link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/script/themes/default/easyui.css" />
- <link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/script/themes/icon.css" />
- <script type="text/javascript" src="http://www.cnblogs.com/script/jquery-1.4.2.min.js" </script>
- <script type="text/javascript" src="http://www.cnblogs.com/script/jquery.easyui.min.js" </script>
- <script type="text/javascript" src="http://www.cnblogs.com/script/locale/easyui-lang-zh_CN.js" mce_src="script/locale/easyui-lang-zh_CN.js"></script>
JS:
- <script type="text/javascript"><!--
- $(function(){
- $('#tt').datagrid({
- width:810,
- height:400,
- idField:'xsbh',
- url:'studentHandler.ashx',
- singleSelect:true,
- columns:[[
- {field:'xsbh',title:'編號',width:80},
- {field:'UserName',title:'姓名',width:100},
- {field:'Sex',title:'性別',width:30},
- {field:'SchoolYear',title:'年份',width:50},
- {field:'opt',title:'操作',width:100,align:'center',
- formatter:function(value,rec,index){
- var s = '<a href="#" mce_href="#" onclick="view(\''+ rec.xsbh + '\')">檢視</a> ';
- var e = '<a href="#" mce_href="#" onclick="edit(\''+ rec.xsbh + '\')">編輯</a> ';
- var d = '<a href="#" mce_href="#" onclick="del(\''+ index +'\')">刪除</a> ';
- return s+e+d;
- }
- }
- ]],
- toolbar:[{
- text:'增加',iconCls:'icon-add',handler:function(){
- window.location.href='StuAdd.aspx';
- }
- },
- {text:'匯入',iconCls:'icon-add',handler:function(){
- window.location.href='StuImport.aspx'
- }
- },
- {text:'查詢',iconCls:'icon-search'}
- ],
- pagination:true
- });
- })
- function view(bh) //轉到檢視頁面
- {
- window.location.href='StuView.aspx?id='+bh+'&page=stu';
- // var row = $('#tt').datagrid('getSelected');
- // if(row)
- // {
- // alert(row.xsbh);
- // }
- }
- function edit(bh) //轉到編輯頁面
- {
- window.location.href='StuEdit.aspx?id='+bh;
- }
- function del(index){ //刪除操作
- $.messager.confirm('確認','確認刪除?',function(row){
- if(row){
- var selectedRow = $('#tt').datagrid('getSelected'); //獲取選中行
- $.ajax({
- url:'delHandler.ashx?id='+selectedRow.xsbh+'&type=stu',
- //加了個type,作用是以後不管什麼刪除,都可以轉到這個ashx中處理
- success:function(){alert('刪除成功');}
- });
- $('#tt').datagrid('deleteRow',index);
- }
- })
- }
- // --></script>
這裡面要注意的是,"操作"的跨行,一定要帶上field:'opt',當然,field可以是任何值,這個值不用從資料庫中繫結,隨便取.如果沒有field的話,會彈出 "rowspan為空或不是物件"的錯誤
獲取資料和分頁ashx:
- using System;
- using System.Web;
- using System.Data;
- using System.Text;
- public class studentHandler : IHttpHandler {
- public void ProcessRequest (HttpContext context) {
- context.Response.ContentType = "text/plain";
- DataSet ds = new DataSet();
- //點選datagrid的分頁按鈕,自動向後臺傳送2個引數,rows和page,代表每頁記錄數和頁索引
- int row = int.Parse(context.Request["rows"].ToString());
- int page = int.Parse(context.Request["page"].ToString());
- ds = GetContent(row, page);
- string text =json.Dataset2Json(ds);
- context.Response.Write(text);
- }
- private DataSet GetContent(int pagesize,int pageindex)
- {
- Graduate.BLL.Student bll = new Graduate.BLL.Student();
- return bll.GetList(pagesize, pageindex);
- }
- public bool IsReusable {
- get {
- return false;
- }
- }
- }
刪除ashx
- using System;
- using System.Web;
- using System.Web.SessionState;
- public class delHandler : IHttpHandler,IRequiresSessionState {
- public void ProcessRequest (HttpContext context) {
- context.Response.ContentType = "text/plain";
- string id = context.Request["id"].ToString();
- string type = context.Request["type"].ToString();
- switch (type)
- {
- case "stu":
- Graduate.BLL.Student stubll = new Graduate.BLL.Student();
- stubll.Delete(id, HttpContext.Current.Session["username"].ToString(), HttpContext.Current.Session["usertype"].ToString());
- break;
- default:
- break;
- }
- }
- public bool IsReusable {
- get {
- return false;
- }
- }
- }
IRequiresSessionState 是因為用到了伺服器端的session,沒有用到的話可以去掉