【Jqurey EasyUI+Asp.net】----DataGrid数据绑定,以及增、删、改(SQL)

也懒得打其他字了,直接进入主题吧

1.首先,数据表Rex_Test

ID int 自增
tName varchar(10) 姓名
tEmail varchar(80) 邮箱

2.至于代码里的Jqurey EasyUI包就直接去官网下载吧。当然其他地方也行,这里就不多做说明了。

3.前台显示页面

Default.aspx

<span style="font-size:14px;"><head>
    <title>myWeb</title>
    <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.6/themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.6/themes/icon.css">
    <link rel="stylesheet" type="text/css" href="demo.css">
    <script type="text/javascript" src="jquery-easyui-1.3.6/jquery.min.js"></script>
    <script type="text/javascript" src="jquery-easyui-1.3.6/jquery.easyui.min.js"></script>
</head>
<body >
    <table id="dg" class="easyui-datagrid" style="width: 700px; height: 300px" data-options="rownumbers:true,onClickRow:ClickRow,singleSelect:true,border:false,pagination:true,url:'Handler3.ashx'">
        <thead>
            <tr>
                <th data-options="field:'ID',width:100">
                    ID
                </th>
                <th data-options="field:'tName',width:100">
                    姓名
                </th>
                <th data-options="field:'tEmail',width:100">
                    邮箱
                </th>
            </tr>
        </thead>
    </table>
    <div id="Div1" class="easyui-panel" title="form Fields" style="width: 1000px; height: 180px;
        float: left;">
        <table>
            <tr>
                <td>
                    姓名:
                </td>
                <td>
                    <input id="n" class="easyui-validatebox" type="text" name="name" data-options="required:true" />
                </td>
            </tr>
            <tr>
                <td>
                    邮箱:
                </td>
                <td>
                    <input id="pr" class="easyui-validatebox" type="text" name="price" data-options="required:true" />
                </td>
            </tr>
            <tr>
                <td>
                    查询:
                </td>
                <td>
                    <input id="sear" class="easyui-validatebox" type="text" name="price" data-options="required:true" />
                </td>
            </tr>
            <tr>
                <td>
                    <a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add'" onclick="add()">
                        Add</a>
                </td>
                <td>
                    <a href="#r" class="easyui-linkbutton" data-options="iconCls:'icon-ok'" onclick="refresh()">Refresh</a>
                    <a href="#r" class="easyui-linkbutton" data-options="iconCls:'icon-ok'" onclick="del()">Delete</a>

                </td>
            </tr>
        </table>
    </div>
    <ul id="tt" class="easyui-tree">
    </ul>
    <script type="text/javascript">

        $(document).ready(function ()
        {
            $.ajax({
                url: "Handler3.ashx",
                type: "get",
                dataType: "json",
                error: function (request, message, ex)
                {
                    alert(message + request + ex);
                },
                success: function (returnValue)
                {

                    $("#tt").tree("loadData", returnValue);
                }
            })
        });

        function searchs()
        {
            $.ajax({
                url: "refresh.ashx",
                type: "post",
                data: "fac=" + $("#sear").val(),
                // data: "olditemid=" + $("#dg").datagrid("getSelected").ItemID + "&itemid=" + $("#ii").val(),
                error: function (request, message, ex)
                {
                    alert(message + request + ex);
                },
                success: function (returnValue)
                {
                    alert(returnValue);
                    $('#dg').datagrid('reload');
                }
            })
        }

        function add()
        {
            $.ajax({
                url: "add.ashx",
                type: "get",
                data: "name=" + $("#n").val() + "&email=" + $("#pr").val(),
                error: function (request, message, ex)
                {
                    alert(message + request + ex);
                },
                success: function (returnValue)
                {

                    alert(returnValue);
                    $('#dg').datagrid('reload'); 

                }
            })
        }
        function del()
        {
            $.ajax({
                url: "del.ashx",
                type: "get",
                data: "id=" + $("#dg").datagrid("getSelected").ID,
                error: function (request, message, ex)
                {
                    alert(message + request + ex);
                },
                success: function (returnValue)
                {
                    //
                    alert(returnValue);
                    $('#dg').datagrid('reload'); 

                }
            })

        }

        function ClickRow(rowIndex, rowData)
        {
            //            alert('这是Name:' + rowData.Name + '这个是ID:' + rowData.ID);
            if (rowData) {

                //document.getElementById("ii").value = rowData.ID;
                document.getElementById("n").value = rowData.tName;
                document.getElementById("pr").value = rowData.tEmail;
            }
        }

        function refresh()
        {
            $.ajax({
                url: "refresh.ashx",
                type: "get",
                data: "id=" + $("#dg").datagrid("getSelected").ID + "&name=" + $("#n").val() + "&email=" + $("#pr").val(),
                // data: "olditemid=" + $("#dg").datagrid("getSelected").ItemID + "&itemid=" + $("#ii").val(),
                error: function (request, message, ex)
                {
                    alert(message + request + ex);
                },
                success: function (returnValue)
                {
                    alert(returnValue);
                    $('#dg').datagrid('reload');
                }
            })
        }
    </script>
</body>
</html></span>

4. Handler3.ashx(初始绑定)

<span style="font-size:14px;"><%@ WebHandler Language="C#" Class="Handler3" %>

using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Text;
using System.IO;

public class Handler3 : IHttpHandler {

    public void ProcessRequest(HttpContext context)
    {

            Query(context);

    }
    public void Query(HttpContext context)
    {
        //调用B层的方法从而获取数据库的Dataset
        SqlHelp sqla = new SqlHelp();
        string strfaca = "select * from Rex_Test";
        DataSet ds = sqla.GetDataSet(strfaca);
        //将Dataset转化为Datable
        DataTable dt = ds.Tables[0];
        int count = dt.Rows.Count;
        string strJson = Dataset2Json(ds, count);//DataSet数据转化为Json数据
        context.Response.Write(strJson);//返回给前台页面
        context.Response.End();

    }
    /// <summary>
    /// DataSet转换成Json格式
    /// </summary>
    /// <paramname="ds">DataSet</param>
    ///<returns></returns>
    public static string Dataset2Json(DataSet ds, int total = -1)
    {
        StringBuilder json = new StringBuilder();

        foreach (DataTable dt in ds.Tables)
        {
            //{"total":5,"rows":[
            json.Append("{\"total\":");
            if (total == -1)
            {
                json.Append(dt.Rows.Count);
            }
            else
            {
                json.Append(total);
            }
            json.Append(",\"rows\":[");
            json.Append(DataTable2Json(dt));
            json.Append("]}");
        }
        return json.ToString();
    }

    /// <summary>
    /// dataTable转换成Json格式
    /// </summary>
    /// <paramname="dt"></param>
    ///<returns></returns>
    public static string DataTable2Json(DataTable dt)
    {
        StringBuilder jsonBuilder = new StringBuilder();

        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("\",");
            }
            if (dt.Columns.Count > 0)
            {
                jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
            }
            jsonBuilder.Append("},");
        }
        if (dt.Rows.Count > 0)
        {
            jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
        }

        return jsonBuilder.ToString();
    }
    public bool IsReusable
    {
        get
        {
            return false;
        }
    }

}</span>

5.add.ashx(新增数据)

<span style="font-size:14px;"><%@ WebHandler Language="C#" Class="add" %>

using System;
using System.Web;

public class add : IHttpHandler {

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";

        string result = string.Empty;
        string name = context.Request.QueryString["name"];
        string email = context.Request.QueryString["email"];

        SqlHelp sqla = new SqlHelp();
        string sqlString = "insert into Rex_Test(tName,tEmail) values('"+name+"','"+email+"')";
        bool aa = sqla.ExecuteNonQuery(sqlString);
        sqla.SqlClose();
        if (aa)
        {
            result = "加入纪录成功";
        }
        context.Response.Write(result);

    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }

}</span>

6.del.ashx(删除数据)

<span style="font-size:14px;"><%@ WebHandler Language="C#" Class="del" %>

using System;
using System.Web;

public class del : IHttpHandler {

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";

        string result = string.Empty;
        string id = context.Request.QueryString["id"];

        SqlHelp sqla = new SqlHelp();
        string sqlString = "delete from Rex_Test where ID='" + id + "'";
        bool aa = sqla.ExecuteNonQuery(sqlString);
        sqla.SqlClose();
        if (aa)
        {
            result = "删除成功";
        }
        context.Response.Write(result);

    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }

}</span>

7.refresh.ashx(更新数据)

<span style="font-size:14px;"><%@ WebHandler Language="C#" Class="refresh" %>

using System;
using System.Web;

public class refresh : IHttpHandler {

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";

        string result = string.Empty;
        string id = context.Request.QueryString["id"];
        string name = context.Request.QueryString["name"];
        string email = context.Request.QueryString["email"];

        SqlHelp sqla = new SqlHelp();
        string sqlString = "update  Rex_Test set tName='"+name+"',tEmail='"+email+"'  where ID='" + id + "'";
        bool aa = sqla.ExecuteNonQuery(sqlString);
        sqla.SqlClose();
        if (aa)
        {
            result = "更新成功";
        }
        context.Response.Write(result);

    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }

}</span>

8.基本上这个样子就差点儿相同了。更加细化的东西还没来得及做,下次弄好了才发吧。

哦。对了,代码里的SqlHelp sqla = new SqlHelp();事实上就是个sql操作类,自己写的,网上有非常多这样的的SqlHelper。这个我就不贴出来了吧。

时间: 2024-10-10 06:05:11

【Jqurey EasyUI+Asp.net】----DataGrid数据绑定,以及增、删、改(SQL)的相关文章

【Jqurey EasyUI+Asp.net】---DataGrid的增、删、改、查

前面是写了两篇,但都不怎么完整,比较才刚开始学这个,都是摸着石头过河,一步一步的来.这两天终于把DataGrid的增删改查融合到一起了,所以分享一下,希望对和我一样的初学者都点帮助. 直接主题吧. 还是想说数据表吧,我建了一个很简单的表Rex_Test ID 自增序号 tName 姓名 tEmail 邮箱 前台代码: Default.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile=&quo

第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据

第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform)让用户方便的操作数据库中的数据. 什么是ADO.NET 是一组库类,System.Data. Ado.net组成 Connection:用来连接数据库 Command:用来执行SQL语句 DataReader:只读.只进的结果集,一条一条读取数据(SteamReader.XmlReader) Da

ADO.NET 增 删 改 查

ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访问技术的基础 连接数据库基本格式:需要两个类1.数据库连接类 SqlConnection2.数据库操作类 SqlCommand 1.连接数据库写连接字符串,立马就要想到有4点要写完,1.连接哪台服务器,2.连接哪个数据库,3.连接用户名,4.密码string sql = "server=.(服务器i

Python---MySQL数据库之四大操作(增 删 改 查)

一.对数据库,表,记录---四大操作(增 删 改 查) 1.操作数据库 (1)对数据库(文件夹):进行增加操作 Create  database  库名; 例:  Create  database  db7 ; 查询库: show  databases; 结果: +-----------------------------+ | Database                   | +----------------------------+ | information_schema | |

oracle 11g 建库 建表 增 删 改 查 约束

一.建库 1.(点击左上角带绿色+号的按钮) 2.(进入这个界面,passowrd为密码.填写完后点击下面一排的Test按钮进行测试,无异常就点击Connect) 二.建表 1-1. create table 表名1( Tid number(4) --primary key 列级约束(主键), Tname varchar(10) --ont null  非空约束,只能定义在列级约束, Tsex varchar2(2)--check (tsex='男'  or  tsex='女') 检查约束, T

数据库基础学习4--表格的 增 删 改 查(简单查询与高级查询)

一.增 C:create 增加,创建,向数据库里面添加数据. insert into Fruit values('K009','苹果',3.0,'高青',90,'') insert into Fruit(Ids,Name,Price,Source,Numbers) values('K010','苹果',3.0,'高青',90) 二.改 U:update修改,从数据库表里面修改数据. update Fruit set Source='烟台' where Ids='K001' 三.删 D:delet

php基础:数据库的含义和基本操作 增 删 改 查

//数据库是帮我们管理数据的一个软件,我们将数据给他,放进数据库里.他能很稳妥的帮我们管理起来,且效率很高.//php的大部分工作就是  php->连接数据库->写入数据->查出数据->格式化数据->显示出来,//数据库管理数据是以表的形式组成的,多行多列,表头声明好了,一个表创建好了,剩下的就是往里面添加数据 多张表放在一个文件夹里面就形成了库  mysql服务器帮我们管理多个库C:\wamp\bin\mysql\mysql5.6.12\data   数据库中的数据放在这个

2016/05/05 smarty 增 删 改

共  八个页面 ①login.php 1 <?php 2 include("init.inc.php"); 3 4 $smarty->display("login.html"); 5 ?> ②login.html  显示模板  在templates模板文件夹中 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset=&q

Android 增,删,改,查 通讯录中的联系人

一.权限 操作通讯录必须在AndroidManifest.xml中先添加2个权限, <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> <uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>