JQueryEasyUI信息管理实例
2014-10-21 21:21
260 查看
1、前端页面代码
OrederTool.ashx2、OrederTool.ashx执行代码
3、Json4EasyUI帮助类
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="News.aspx.cs" Inherits="SysManager_NewsManager_News" %> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>信息列表</title> <link href="../Css/default.css" rel="stylesheet" type="text/css" /> <link rel="stylesheet" type="text/css" href="../../Share/JQueryEasyUI/themes/default/easyui.css" /> <link rel="stylesheet" type="text/css" href="../../Share/JQueryEasyUI/themes/icon.css" /> <script type="text/javascript" src="../../Share/Scripts/jquery-1.4.1.min.js"></script> <script type="text/javascript" src="../../Share/JQueryEasyUI/jquery.easyui.min.1.2.2.js"></script> <script type="text/javascript"> var grid; function getwidth() { return document.body.clientWidth * 0.99; } function resizeGrid() { $('#test').datagrid('resize', { width: getwidth() }); $('#p').panel('resize', { width: getwidth() }); } function edit(bh) //转到编辑页面 { var page = $("#HF_PAGESIZE").val(); window.location.href = 'NewsEdit.aspx?newsId=' + bh + '&p=' + page; } function qdel(index) { //删除操作 alert(index); $.messager.confirm('确认', '确认删除?', function (row) { if (row) { var selectedRow = $('#test').datagrid('getSelected'); //获取选中行 // $.ajax({ // url:'delHandler.ashx?id='+selectedRow.xsbh+'&type=stu', // success:function(){alert('删除成功');} // }); $('#test').datagrid('deleteRow', index); } }) } $(function () { Bind(); }); function Bind() { var pag = $("#HF_PAGESIZE").val(); var url = "../../Share/Controller/NewsTool.ashx?action=list&p=" + pag; //alert(url); grid = $('#test').datagrid({ title: '数据显示窗口', iconCls: 'icon-reload', loadMsg: '数据装载中......', //width: function(){return document.body.clientWidth*0.9}, //height: 350, nowrap: true, striped: true, url: url, sortName: 'SortIndex', sortOrder: 'desc', remoteSort: true, idField: 'SortIndex', pageSize: 20, //每页显示的记录条数,默认为10 pageList: [10, 15, 20, 25, 30, 35, 40], //可以设置每页记录条数的列表 frozenColumns: [[ { field: 'ck', checkbox: true, height: 200 } // , { title: 'id', field: 'id', width: 80, sortable: true } ]], columns: [[ { field: 'Title', title: '标题', width: 320 }, { field: 'CatId', title: '类别', width: 120, formatter: function (value, rec, index) { var s = getCatName(value); return s; } }, { field: 'SortIndex', title: '排序', width: 120 }, { field: 'UserName', title: '发布人', width: 120 }, { field: 'CreateDate', title: '时间', width: 120 }, { field: 'opt', title: '操作', width: 200, align: 'center', formatter: function (value, rec, index) { var e = '<a href="#" mce_href="#" onclick="edit(' + rec.id + ')">编辑</a> '; //var d = '<a href="#" mce_href="#" onclick="qdel(' + index + ')">删除</a> '; var d=""; return e + d; } } ]], pagination: true, // 是否显示分页 rownumbers: true, // 是否显示行号 fitColumns: true, singleSelect: false, toolbar: [{ text: '新增', iconCls: 'icon-add', handler: add }, '-', { text: '删除', iconCls: 'icon-remove', handler: del } ] }); //加底部文字 $('#test').datagrid('getPager').pagination({ beforePageText: '第', //页数文本框前显示的汉字 afterPageText: '页 共 {pages} 页', displayMsg: '当前显示{from}到{to} 共{total}记录', pageNumber:<%=pageIndex %>, onBeforeRefresh: function (pageNumber, pageSize) { $(this).pagination('loading'); //alert('pageNumber:' + pageNumber + ',pageSize:' + pageSize); $("#HF_PAGESIZE").attr("value", pageNumber); $(this).pagination('loaded'); }, onSelectPage: function (pageNumber, pageSize) { $("#HF_PAGESIZE").attr("value", pageNumber); } }); } function SearchBind() { var DTypeList = document.getElementById('DTypeList'); var Ctype = DTypeList.options[DTypeList.selectedIndex].value; var Title = $('#txtTitle').val(); var url = "../../Share/Controller/NewsTool.ashx?action=list&m=" + Math.random(); if (Ctype != "") { url += "&Ctype=" + Ctype; } if (Title != "") { url += "&Title=" + Title; } //grid.datagrid('reload'); grid.datagrid('loadData', { total: 0, rows: [] });//先清空数据避免缓存 grid.datagrid({ url: url }); } function add() { window.location.href = 'NewsAdd.aspx'; } function getSelectedArr() { var ids = []; var rows = $('#test').datagrid('getSelections'); for (var i = 0; i < rows.length; i++) { ids.push(rows[i].id); } return ids; } function getSelectedID() { var ids = getSelectedArr(); return ids.join(','); } function arr2str(arr) { return arr.join(','); } function del() { var arr = getSelectedArr(); if (arr.length > 0) { $.messager.confirm('提示信息', '您确认要删除吗?', function (data) { if (data) { $.ajax({ url: '/Share/Controller/NewsTool.ashx?action=del&id=' + arr2str(arr), type: 'GET', timeout:0, async: false, error: function () { $.messager.alert('错误', '删除失败!', 'error'); }, success: function (data) { eval('data=' + data); if (data.success) { grid.datagrid('reload'); //grid.datagrid('clearSelections'); } else { $.messager.alert('错误', data.msg, 'error'); } } }); } }); } else { Msgshow('请先选择要删除的记录。'); } } function Msgshow(msg) { $.messager.show({ title: '提示', msg: msg, showType: 'show' }); } function getCatName(CatId) { var html = $.ajax({ type: "POST", url: "/Share/Controller/NewsTool.ashx", data: { HttpType: "GetCName", CatId: CatId }, async: false }).responseText; return html; } </script> <style type="text/css"> .datagrid-view tr { height: 22px !important; line-height: 22px !important; } </style> </head> <body onresize="resizeGrid();"> <form id="form1" runat="server"> <asp:HiddenField ID="HF_PAGESIZE" runat="server" Value="1" /> <div id="p" class="easyui-panel" title="信息搜索" dosize="true" style="height: 100px; padding: 10px; background: #fafafa; margin-bottom: 5px;" iconcls="icon-search" collapsible="true" loadingmessage="信息搜索..."> <table> <tr> <td> 信息分类: </td> <td> <asp:DropDownList ID="DTypeList" class="easyui-validatebox" runat="server" AppendDataBoundItems="true"> <asp:ListItem Value="0">请选择</asp:ListItem> </asp:DropDownList> </td> <td> 信息标题: </td> <td> <input class="easyui-validatebox" id="txtTitle"> </td> <td> <a id="btnEp" class="easyui-linkbutton" icon="icon-ok" href="javascript:void(0)" onclick="SearchBind();">搜索</a> </td> </tr> </table> </div> <table id="test"> </table> </form> </body> </html>
OrederTool.ashx2、OrederTool.ashx执行代码
<%@ WebHandler Language="C#" Class="OrederTool" %> using System; using System.Web; using System.Text; using System.Data; using Sq.Common; using System.Collections.Generic; public class OrederTool : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "json/application;"; //context.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); //context.Response.AddHeader("pragma", "no-cache"); //context.Response.AddHeader("cache-control", ""); //context.Response.CacheControl = "no-cache"; //context.Response.Charset = Encoding.UTF8.ToString(); string sReturnJson = string.Empty; string sqlexe = string.Empty; string action = ParamsofEasyUI.RequstString("action"); switch (action) { case "save": sReturnJson = save(); break; case "del": sReturnJson = delete(); break; case "list": case "query": sReturnJson = getData(action); break; case "get": sReturnJson =""; break; default: break; } if (action == "Zreo") { string OrderID = context.Request.Form["OrderID"].ToString(); string ProCode = context.Request.Form["ProCode"].ToString(); string type = context.Request.Form["type"].ToString(); sReturnJson = UpZreo(OrderID, ProCode, type).ToString(); } if (action == "PayState") { string OrderID = context.Request.Form["OrderID"].ToString(); sReturnJson = PayState(OrderID).ToString(); } if (action == "Unlock") { string OrderID = context.Request.Form["OrderID"].ToString(); sReturnJson = Unlock(OrderID).ToString(); } context.Response.Write(sReturnJson); } public string Unlock(string OrderID) { Model.A_OrderInfo OrderInfoModel = new BLL.A_OrderInfo().GetModel(Convert.ToInt32(OrderID)); if (OrderInfoModel != null) { OrderInfoModel.IsLock = 0; bool bg = new BLL.A_OrderInfo().Update(OrderInfoModel); if (bg) { return JsonUtil.Serialize(new { Lock = 1 }); } else { return JsonUtil.Serialize(new { Lock = 0 }); } } else { return JsonUtil.Serialize(new { Lock = 0 }); } } public string PayState(string OrderID) { Model.A_OrderInfo OrderInfoModel = new BLL.A_OrderInfo().GetModel(Convert.ToInt32(OrderID)); if (OrderInfoModel != null) { return JsonUtil.Serialize(new { PayState = OrderInfoModel.PayState }); } else { return JsonUtil.Serialize(new { PayState = 0 }); } } private string UpZreo(string OrderID, string ProCode, string type) { List<Model.A_OrderPro> list = new BLL.A_OrderPro().GetList(null, "OrderId=" + OrderID + " and ProCode='" + ProCode + "'", null); if (list.Count > 0) { if (type == "true") { list[0].IsZero = 1; bool fg = new BLL.A_OrderPro().Update(list[0]); Model.A_OrderInfo OrderInfoModel = new BLL.A_OrderInfo().GetModel(Util.GetInt(OrderID)); if (OrderInfoModel != null) { if (OrderInfoModel.WarningMsg.Trim() != "") { OrderInfoModel.WarningMsg = OrderInfoModel.WarningMsg + " 订单缺货"; } else { OrderInfoModel.WarningMsg = " 订单缺货"; } new BLL.A_OrderInfo().Update(OrderInfoModel); } if (fg) { return JsonUtil.Serialize(new { code = 1, content = "<font color='red'>" + OrderInfoModel.WarningMsg.Trim() + "<font>" }); } } else { list[0].IsZero = 0; bool fg = new BLL.A_OrderPro().Update(list[0]); if (fg) { List<Model.A_OrderPro> ll = new BLL.A_OrderPro().GetList(null, "OrderId=" + OrderID + " and IsZero=1", null); if (ll.Count < 1) { Model.A_OrderInfo OrderInfoModel = new BLL.A_OrderInfo().GetModel(Util.GetInt(OrderID)); if (OrderInfoModel != null) { if (OrderInfoModel.WarningMsg.Trim() != "") { OrderInfoModel.WarningMsg = OrderInfoModel.WarningMsg.Replace("订单缺货", ""); if (OrderInfoModel.WarningMsg.Trim() == "") { OrderInfoModel.WarningMsg = "正常订单"; } } new BLL.A_OrderInfo().Update(OrderInfoModel); return JsonUtil.Serialize(new { code = 1, content = "<font color='red'>" + OrderInfoModel.WarningMsg.Trim() + "<font>" }); } } else { return JsonUtil.Serialize(new { code = 1, content = "<font color='red'>订单缺货<font>" }); } } } } return JsonUtil.Serialize(new { code = 0, content = "正常订单" }); } private string getData(string action) { string order = ParamsofEasyUI.order; string sort = ParamsofEasyUI.sort; int page = ParamsofEasyUI.page; int rows = ParamsofEasyUI.rows; string sWhere = string.Empty; string sqlexe = string.Empty; if (action.Equals("list")) { DataTable dt = null; string Consignee = ParamsofEasyUI.RequstString("Consignee"); if (Consignee != "") { string sql = String.Format("SELECT *,(SELECT OrderStateName FROM A_OrderState where id=A_OrderInfo.OrderState) AS OrderStateName FROM A_OrderInfo where Consignee='{0}' order by {1} {2}", Consignee, sort, order); dt = new SQLServerDAL.A_OrderInfo().GetDataSet(sql).Tables[0]; } else { string sql = String.Format("SELECT *,(SELECT OrderStateName FROM A_OrderState where id=A_OrderInfo.OrderState) AS OrderStateName FROM A_OrderInfo order by {0} {1}", sort, order); dt = new SQLServerDAL.A_OrderInfo().GetDataSet(sql).Tables[0]; } string josn = Json4EasyUI.onDataGrid(dt, page, rows); return josn; } return null; } private string delete() { string sReturnJson = string.Empty; string id = ParamsofEasyUI.RequstString("id"); return sReturnJson; } private string save() { string sReturnJson = string.Empty; return sReturnJson; } public bool IsReusable { get { return false; } } }
3、Json4EasyUI帮助类
using System; using System.Collections.Generic; using System.Web; using System.Text; using System.Data; using Sq.Common; /// <summary> ///Json4EasyUI 的摘要说明 /// </summary> public class Json4EasyUI { public Json4EasyUI() { // //TODO: 在此处添加构造函数逻辑 // } public static string onDataGrid1(DataTable dt, int start, int end) { StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\"total\":" + dt.Rows.Count + ",\"rows\":["); for (int i = start; i < end; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows[i][j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]}"); return jsonBuilder.ToString(); } /// <summary> /// 填充DataGrid的Json数据格式 /// </summary> /// <param name="dt">数据集</param> /// <param name="page">页数</param> /// <param name="rows">每页行数</param> /// <returns></returns> public static string onDataGrid(DataTable dt, int page, int rows, int Counts) { page = (page == 0) ? 1 : page; rows = (rows == 0) ? 10 : rows; int start = (page - 1) * rows; int end = page * rows; end = (end > Counts) ? Counts : end; StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\"total\":" + Counts + ",\"rows\":["); for (int i = 0; i < dt.Rows.Count; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { Type type = dt.Columns[j].DataType; jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(GetToJson.StringFormat(dt.Rows[i][j].ToString(), type)); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]}"); return jsonBuilder.ToString(); } /// <summary> /// 填充DataGrid的Json数据格式 /// </summary> /// <param name="dt">数据集</param> /// <param name="page">页数</param> /// <param name="rows">每页行数</param> /// <returns></returns> public static string onDataGrid(DataTable dt, int page, int rows) { page = (page == 0) ? 1 : page; rows = (rows == 0) ? 10 : rows; int start = (page - 1) * rows; int end = page * rows; end = (end > dt.Rows.Count) ? dt.Rows.Count : end; StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\"total\":" + dt.Rows.Count + ",\"rows\":["); for (int i = start; i < end; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows[i][j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]}"); return jsonBuilder.ToString(); } /// <summary> /// 填充DataGrid分页的Json数据格式 /// </summary> /// <param name="dt">分页数据集</param> /// <param name="total">总条数</param> /// <returns></returns> public static string onDataGrid(DataTable dt, int total) { StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\"total\":" + total + ",\"rows\":["); for (int i = 0; i < dt.Rows.Count; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows[i][j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]}"); return jsonBuilder.ToString(); } /// <summary> /// 用于初始化表单的Json数据 /// </summary> /// <param name="dt">数据集,仅一条记录</param> /// <returns></returns> public static string onForm(DataTable dt) { StringBuilder jsonBuilder = new StringBuilder(); if (dt.Rows.Count > 0) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows[0][j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("}"); } return jsonBuilder.ToString(); } } /// <summary> /// EasyUI控件可传参数 /// </summary> public class ParamsofEasyUI { public ParamsofEasyUI() { } public static string RequstForm(string name) { return (HttpContext.Current.Request.Form[name] == null ? string.Empty : HttpContext.Current.Request.Form[name].ToString().Trim()); } public static string RequstString(string sParam) { return (HttpContext.Current.Request[sParam] == null ? string.Empty : HttpContext.Current.Request[sParam].ToString().Trim()); } public static int RequstInt(string sParam) { int iValue; string sValue = RequstString(sParam); int.TryParse(sValue, out iValue); return iValue; } public static string order { get { return RequstString("order"); } } public static string sort { get { return RequstString("sort"); } } public static int page { get { return RequstInt("page"); } } public static int rows { get { return RequstInt("rows"); } } }
相关文章推荐
- 应用程序实例——用户信息管理
- PowerBuilder 数据窗口实例三(用户信息管理-FreeFrom风格)
- Apache Shiro+SpringMVC+Hibernate Search+Hibernate+Bootstrap企业信息管理系统基础框架搭建整合实例代码教程
- JDBC 信息管理系统小实例
- 线性表综合实例之学生信息管理系统
- 命名规范不只是增加可读性!(实例:asp.net C#学生信息管理系统)
- c语言实现的货物管理系统实例代码(增加删除 查找货物信息等功能)
- 数据库及实例信息管理
- ibatis之——学生信息管理实例
- JavaWeb-网站在线用户信息、网站访问量以及管理踢出用户实例
- 〖JAVA IO〗_实例操作—单人信息管理程序笔记
- 项目实例:车辆信息统计报表管理系统--本地化的问题
- 项目实例:车辆信息统计报表管理系统--导出PDF怎么调样式?
- 应用程序实例——用户信息管理
- Apache Shiro+SpringMVC+Hibernate Search+Hibernate+Bootstrap企业信息管理系统基础框架搭建整合实例代码教程
- PowerBuilder 数据窗口实例三(用户信息管理-FreeFrom风格)
- 车辆信息统计报表管理系统--ZedGraph控件属性设置以及实例
- (Java)集合的综合运用实例——实现学生信息管理
- 学生信息管理系统-书本实例
- ACCESS 实例学生信息管理表之间关系图