时间仓促,代码写的乱,莫怪,着影区不用理会(功能之外)

<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Jquery-Easy-UI/jquery.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Jquery-Easy-UI/jquery.easyui.min.js")" type="text/javascript"></script>
    <link href= "@Url.Content("/Jquery-Easy-UI/themes/icon.css")" rel="stylesheet" />
    <link href="@Url.Content("../../Jquery-Easy-UI/themes/black/easyui.css")" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Jquery-Easy-UI/locale/easyui-lang-zh_CN.js")" type="text/javascript"></script>

前台代码如下:

<script type="text/javascript">
    $(function ()
    {
        $("#dg").datagrid(
            {
                toolbar:
                [
                    {
                        text: 'Add',
                        iconCls: 'icon-add',
                        handler: function ()
                        {
                            $.messager.alert("Action", "Add");

                        }
                    }, '-',
                    {
                        text: 'Edit',
                        iconCls: 'icon-edit',
                        handler: function ()
                        {
                            $.messager.alert("Action", "Edit");
                        }
                    }, '-',
                    {
                        text: 'Search',
                        iconCls: 'icon-search',
                        handler: function ()
                        {
                            $.messager.alert("Action", "Search");
                        }
                    }, '-',
                    {
                        text: 'Help',
                        iconCls: 'icon-help',
                        handler: function ()
                        {
                            $.messager.alert("Action", "Help");
                        }
                    }],

                onSelectPage: function (pageNumber, pageSize)
                {
                    $(this).pagination('loading');
                    alert('pageNumber:' + pageNumber + ',pageSize:' + pageSize);
                    $(this).pagination('loaded');
                },
                url: "/Home/QueryStudents",
                pagination: true,
                rownumbers: true,
                loadMsg: '数据加载中请稍后……',
                //fit: true,
                fitColumns: true,
                width: 900,
                height: 430,
                pageNumber: 1,
                pageSize: 12,
                pageList: [12, 18, 24, 32, 40],
                columns:
                [[{ title: "编号", field: "AutoKey", align: 'center' },
                    { title: "姓名", field: "Name", align: 'center' },
                    { title: "性别", field: "Sex", align: 'center' },
                    { title: "学校", field: "School", align: 'center' },
                    { title: "年龄", field: "Age", align: 'center' },
                    { title: "学科", field: "Major", align: 'center' },
                    { title: "邮箱", field: "Email", align: 'center' },
                    { title: "省份", field: "Province", align: 'center' },
                    { title: "市", field: "City", align: 'center'}]]
            }
        );
    });

    function show()
    {
        var province = $("#pro").val();
        var sex = $("#sex").val();
        $("#dg").datagrid({
            queryParams: {
                pro: province,
                sex: sex
            }
        });
    }
</script>
<div id="dg">
</div>
省:<input type="text" id="pro" />
性别:<input type="text" id="sex" />
<a onclick="show()" href="#" class="easyui-linkbutton">查询</a> 

后台代码如下

  public JsonResult QueryStudents()
        {

            string pro = Request["pro"];
            string sex = Request["sex"];
            int rows = Convert.ToInt32(Request["rows"]);
            int page = Convert.ToInt32(Request["page"]);

            List<SqlParameter> parameters = new List<SqlParameter>();
            parameters.Add(new SqlParameter("@cureentPage", page));
            parameters.Add(new SqlParameter("@pageSize", rows));

            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.Append(@" WITH students AS (SELECT *,  ROW_NUMBER() OVER (order by AutoKey) as RowNumber FROM Student where 1=1 ");
            if (pro != null && pro != "")
            {
                stringBuilder.Append(" and Province=@province");
                parameters.Add(new SqlParameter("@province", pro));
            }
            if (sex != null && sex != "")
            {
                stringBuilder.Append(" and Sex=@sex");
                parameters.Add(new SqlParameter("@sex", sex));
            }
            stringBuilder.Append(" )  ");

            stringBuilder.Append(@"SELECT * FROM students
                                        WHERE RowNumber between @cureentPage*@pageSize-@pageSize+1 and @cureentPage*@pageSize");
            string sql = stringBuilder.ToString();
            List<Student> stus = SelectMethod.SelectStudent(sql, parameters);

            int total;
            using (SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=BBS;uid=sa;pwd=sa"))
            {
                conn.Open();
                List<SqlParameter> param=new List<SqlParameter>();

                StringBuilder sb = new StringBuilder();

                sb.Append("select count(*) from Student where 1=1");
                if (pro != null && pro != "")
                {
                    sb.Append(" and Province=@province");
                    param.Add(new SqlParameter("@province", pro));
                }
                if (sex != null && sex != "")
                {
                    sb.Append(" and Sex=@sex");
                    param.Add(new SqlParameter("@sex", sex));
                }
                string selectedCountsql = sb.ToString();
                using (SqlCommand sqlcmd = new SqlCommand(selectedCountsql, conn))
                {
                    if (param!=null)
                    {
                        foreach (SqlParameter sp in param)
                        {
                            sqlcmd.Parameters.Add(sp);
                        }
                    }
                    total = Convert.ToInt32(sqlcmd.ExecuteScalar());
                }
            }

            return Json(new { total = total, rows = stus }, "text/html", Encoding.UTF8,
                JsonRequestBehavior.AllowGet);

        }

  

对应表如下:

MVC-Easy-UI-datagrid-分页-查询的更多相关文章

  1. JQuery Easy Ui dataGrid 数据表格 ---制作查询下拉菜单

    JQuery Easy Ui dataGrid 数据表格 数据表格 - DataGrid 继承$.fn.panel.defaults,使用$.fn.datagrid.defaults重载默认值.. 数 ...

  2. Jquery Easy UI Datagrid 上下移动批量保存数据

    DataGrid with 上下移动批量保存数据 通过前端变量保存修改数据集合,一次性提交后台执行 本想结合easyui 自带的$('#dg').datagrid('getChanges'); 方法来 ...

  3. spring mvc +easy ui +Mybatis 录入数据

    1.itemsEasyui.jsp 应用到的插件及知识点:日期控件My97 ,图片本地预览函数PreviewImage() (1)easy ui 的模态窗口使用时,要指定DIV的属性 data-opt ...

  4. easy ui datagrid 增,删,改,查等基本操作

    如下图: ①列表信息图 ②添加信息图 ③修改信息图 html代码: <%@ Page Title="" Language="C#" MasterPageF ...

  5. ASP.MVC EASY UI 入门之 —— Tree & ComboTree

    1.常规的EASY UI的tree和comboTree代码基本是官方的DEMO都有的,虽然很简单,但是还是要实践的做一次,才能更清晰的了解和使用它!先上效果图 因为用的是code first,所以数据 ...

  6. 玩转Web之easyui(一)-----easy ui datagird 分页

    easy ui 中数据表格的分页其实是很简单的,分页是在数据表格可以正常显示数据的基础上进行的,在这里给出servlet的代码,其中selectAll()方法是从数据库中提取所有数据, 分页的一种思路 ...

  7. Easy UI DataGrid 与 分页

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs& ...

  8. easy ui datagrid 数据分页

    参照easyui官方网站提供的demo写了个datagrid数据分页的demo, 具体参数我就不一一罗列了,详细见官方网站, 这里只介绍一下具体的注意事项和常乃用到的几项, $('#test').da ...

  9. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(8)-MVC与EasyUI DataGrid 分页

    系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 EasyUI Datagrid在加载的时候会提交一些分页的信息到后台,我们需要根据这些信息来进行数据分页再次返回到前台 实 ...

  10. JQuery Easy Ui dataGrid 数据表格

    数据表格 - DataGrid 英文文档:http://www.jeasyui.com/documentation/index.php# 继承$.fn.panel.defaults,使用$.fn.da ...

随机推荐

  1. Objective C 链式调用

    起因 某日使用DKChainableAnimationKit的时候发现可以如下写代码: view.animation.rotate(180).anchorTopLeft.thenAfter(1.0). ...

  2. 现在网页中流行的css3样式

    1.鼠标放在圆形图片中,图片渐渐的变方形[17素材头像的特效,觉得不错就研究下来了 ———— 17sucai.com] img{border-radius:50%;transition: all .4 ...

  3. SQL XML process

    declare @data xml set @data=' <bookstore> <book category="COOKING"> <title ...

  4. MQ学习(二)----ActiveMQ简介(转)

    1.  什么是ActiveMQ ActiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的.可扩展的.稳定的和安全的企业级消息通信.ActiveMQ使用A ...

  5. Problem G: If We Were a Child Again

    Problem G: If We Were a Child AgainTime Limit: 1 Sec Memory Limit: 128 MBSubmit: 18 Solved: 14[Submi ...

  6. Java中单例七种写法(懒汉、恶汉、静态内部类、双重检验锁、枚举)

    /*** * 懒汉模式 1 * 可以延迟加载,但线程不安全. * @author admin * */ public class TestSinleton1 { private static Test ...

  7. 张孝祥Java高新技术汇总

    一.自动装箱和拆箱: 在Java中有8种基本数据类型:byte,short,int,long,float,double,char,boolean.而基本数据类型不是对象,这时人们给他们定义了包装类,使 ...

  8. MarkDown使用 (二)矩阵

    MarkDown的矩阵输入 MarkDown的矩阵输入 简单的Matrix 例如 $$ \begin{matrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ ...

  9. Python3.5创建虚拟环境

    为每个程序单独创建虚拟环境可以保证程序只能访问虚拟环境中的包,保持全局解释器的干净整洁,使其只作为创建(更多)虚拟环境的源. windows下创建虚拟环境 Python3.5自带venv,只需执行py ...

  10. 用1个 2个3个 5个div实现 十字架

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...