• Asp.Net+Oracle+BootStrap+Jquery


                       Asp.Net+Oracle+BootStrap+Jquery实现简单的增删查改

    概要:相信有了解过BootStrap的朋友都知道,BootStrap这家伙很强大,尽管你不是学做美工的,你都会爱上它.我这边通过一些学习写了一套前端基于BootStrap+Jquery,后端是Oracle+Ado.Net的一套简单的增删查改.我们可以一起学习.

    正文,义不容辞首先来张主页面,整体的的页面布局:

    index.html,BootStrap可以去网上下载:

    <!DOCTYPE HTML>
    <html>
    <head>
        <title>后台管理系统</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link href="/BootStrap/assets/css/dpl-min.css" rel="stylesheet" type="text/css" />
        <link href="/BootStrap/assets/css/bui-min.css" rel="stylesheet" type="text/css" />
        <link href="/BootStrap/assets/css/main-min.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    
    <div class="header">
        <!--logo-->
        <div class="dl-title">
            <!--<img src="/chinapost/Public/assets/img/top.png">-->
        </div>
    
        <div class="dl-log">欢迎您,<span class="dl-log-user">YZR</span><a href="#" title="退出系统" class="dl-log-quit">[退出]</a>
        </div>
    </div>
    <div class="content">
        <div class="dl-main-nav">
            <div class="dl-inform"><div class="dl-inform-title"><s class="dl-inform-icon dl-up"></s></div></div>
            <ul id="J_Nav"  class="nav-list ks-clear">
                <li class="nav-item dl-selected"><div class="nav-item-inner nav-home">系统管理</div></li>        <li class="nav-item dl-selected"><div class="nav-item-inner nav-order">业务管理</div></li>
    
            </ul>
        </div>
        <ul id="J_NavContent" class="dl-tab-conten">
    
        </ul>
    </div>
    <script type="text/javascript" src="/BootStrap/assets/js/jquery-1.8.1.min.js"></script>
    <script type="text/javascript" src="/BootStrap/assets/js/bui-min.js"></script>
    <script type="text/javascript" src="/BootStrap/assets/js/common/main-min.js"></script>
    <script type="text/javascript" src="/BootStrap/assets/js/config-min.js"></script>
    <script>
        BUI.use('common/main',function(){
            var config = [
                {
                    id: '1', menu: [
                        {
                            text: '系统管理', items: [
                              { id: '12', text: '机构管理', href: 'Node/index.html' }, { id: '3', text: '角色管理', href: 'Role/index.html' }, { id: '4', text: '用户管理', href: '/BootStrap/User/index.html' }, { id: '6', text: '菜单管理', href: 'Menu/index.html' }
                            ]
                        }]
                },
               {
                    id: '7', homePage: '9', menu: [
                    {
                        text: '业务管理', items: [
                            { id: '9', text: '查询业务', href: 'Node/index.html' }
                        ]
                    }]
                }]; 
            new PageUtil.MainPage({
                modulesConfig : config
            });
        });
    </script>
        <!--页脚-->
    <div style="text-align:center;">
    </div>
    </body>
    </html>

    基于用户管理写一套增删查改:

    User/index.html:

    <!DOCTYPE html>
    <html>
    <head>
        <title>用户管理</title>
        <meta charset="UTF-8">
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/bootstrap.css" />
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/bootstrap-responsive.css" />
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/style.css" />
        <script type="text/javascript" src="/BootStrap/Js/jquery.js"></script>
        <!--<script type="text/javascript" src="/BootStrap/Js/jquery.sorted.js"></script>-->
        <script type="text/javascript" src="/BootStrap/Js/bootstrap.js"></script>
        <script type="text/javascript" src="/BootStrap/Js/ckform.js"></script>
        <script type="text/javascript" src="/BootStrap/Js/common.js"></script>
        <script src="/Js/AjaxHelp.js"></script>
        <script src="/TempJS/Yzr.js"></script>
        <style type="text/css">
            body {
                padding-bottom: 40px;
            }
            .sidebar-nav {
                padding: 9px 0;
            }
            @media (max- 980px) {
                /* Enable use of floated navbar text */
                .navbar-text.pull-right {
                    float: none;
                    padding-left: 5px;
                    padding-right: 5px;
                }
            }
        </style>
    </head>
    <body>
        <script src="../../TempJS/Yzr.js"></script> 
        用户名称:
        <input type="text" name="ENAME" id="ENAME"class="abc input-default" placeholder="" value="">&nbsp;&nbsp;  
        <button type="button" class="btn btn-primary" onclick="QueryByName()">查询</button>&nbsp;&nbsp; <button type="button" class="btn btn-success" id="addnew">新增用户</button>
    <table id="EMP_grid" class="table table-bordered table-hover definewidth m10">
        <thead>
        <tr>
            <th>员工编号</th>
            <th>姓名</th>
            <th>工作</th>
            <th>薪水</th>
            <th>雇佣日期</th>
            <th>绩效奖金</th>
            <th>补贴</th>
            <th>部门编号</th>
            <th>操作</th>
        </tr>
        </thead>
        <tbody></tbody>
    </table>
    </body>
    </html>
    <script>
        var Template = {
            1: "<tr><td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td><td>{6}</td><td>{7}</td><td><a href='/BootStrap/User/edit.aspx?empno={0}'>编辑</a> | <a href='javascript:void(0);' onclick='del({0})'>删除</a></td></tr>"
        }
        $(function () {
            getlist();
            //新增User
            $('#addnew').click(function(){
                    window.location.href="/BootStrap/User/add.aspx";
             });
        });
        function getlist() {
            //获取表格数据
            AjaxHelp.ProcessGet("/Ajax/BootstrapHandler.ashx?action=query", function (ajaxObj) {
                getdata(ajaxObj);
            })
        }
        function getdata(ajaxObj) {
            var template = Template[1];
            var innerhtml = "";
            for (var i = 0; i < ajaxObj.length; i++) {
                innerhtml = innerhtml + StringFormat.execute(template, ajaxObj[i].EMPNO, ajaxObj[i].ENAME, ajaxObj[i].JOB, ajaxObj[i].MGR, ajaxObj[i].HIREDATE, ajaxObj[i].SAL, ajaxObj[i].COMM, ajaxObj[i].DEPTNO);
            }
            $("#EMP_grid tbody").html(innerhtml);
        }
        function del(id)
        {
            if(confirm("确定要删除吗?"))
            {
                AjaxHelp.ProcessGet("/Ajax/BootstrapHandler.ashx?action=del&empno=" + id, function (ajxaObj) {
                    alert(ajxaObj);
                    var url = "/BootStrap/User/index.html";
                    window.location.href = url;
                });
            }
        }
        
        function QueryByName() {
            var ename = $("#ENAME").val();
            AjaxHelp.ProcessGet("/Ajax/BootstrapHandler.ashx?action=queryByname&ename=" + ename, function (ajaxObj) {
                if(ajaxObj.Status==1){
                    getdata(ajaxObj.Datas);
                }
               
            });
        }
    </script>

    编辑页面和新增页面基本一致:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="edit.aspx.cs" Inherits="myOracle.UI.BootStrap.User.edit" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>编辑</title>
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/bootstrap.css" />
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/bootstrap-responsive.css" />
        <link rel="stylesheet" type="text/css" href="/BootStrap/Css/style.css" />
        <script type="text/javascript" src="/BootStrap/Js/jquery.js"></script>
       <!-- <script type="text/javascript" src="../Js/jquery.sorted.js"></script>-->
        <script type="text/javascript" src="/BootStrap/Js/bootstrap.js"></script>
        <script type="text/javascript" src="/BootStrap/Js/ckform.js"></script>
        <script type="text/javascript" src="/BootStrap/Js/common.js"></script>
        <script src="/TempJS/showdate.js"></script>
        <style type="text/css">
            body {
                padding-bottom: 40px;
            }
            .sidebar-nav {
                padding: 9px 0;
            }
            @media (max- 980px) {
                /* Enable use of floated navbar text */
                .navbar-text.pull-right {
                    float: none;
                    padding-left: 5px;
                    padding-right: 5px;
                }
            }
        </style>
    </head>
    <body>
    <form  method="post" class="definewidth m20">
    <input type="hidden" name="id" value="" />
        <table class="table table-bordered table-hover definewidth m10">
            <tr>
                <td width="10%" class="tableleft">empno</td>
                <td><input type="text" name="empno" value="" id="empno"/></td>
            </tr>
            <tr>
                <td class="tableleft">ename</td>
                <td><input type="text" name="ename" value="" id="ename"/></td>
            </tr>
            <tr>
                <td class="tableleft">job</td>
                <td><input type="text" name="job" value="" id="job"/></td>
            </tr>
         <tr>
                <td class="tableleft">mgr</td>
                <td><input type="text" name="mgr" value="" id="mgr"/></td>
            </tr>
          <tr>
                <td class="tableleft">hiredate</td>
                <td><input type="text" name="hiredate" value="" id="hiredate" onclick="return Calendar('hiredate');" /></td>
            </tr>
            <tr>
                <td class="tableleft">sal</td>
                <td><input type="text" name="sal" value="" id="sal"/></td>
            </tr>
            <tr>
                <td class="tableleft">comm</td>
                <td><input type="text" name="comm" value="" id="comm"/></td>
            </tr>
               <tr>
                <td class="tableleft">deptno</td>
                <td><input type="text" name="deptno" value="" id="deptno"/></td>
            </tr>
            <tr>
                <td class="tableleft"></td>
                <td>
                    <button type="submit" class="btn btn-primary">保存</button>&nbsp;&nbsp;<button type="button" class="btn btn-success" name="backid" id="backid">返回列表</button>
                </td>
            </tr>
        </table>
    </form>
    </body>
    </html>
        <script type="text/javascript">
            var row='<%=Mstr %>';
            var cols = row.split(',');
            $("#id").val(cols[0]);
            $("#empno").val(cols[0]);
            $("#ename").val(cols[1]);
            $("#job").val(cols[2]);
            $("#mgr").val(cols[3]);
            $("#hiredate").val(cols[4]);
            $("#sal").val(cols[5]);
            $("#comm").val(cols[6]);
            $("#deptno").val(cols[7]);
        </script>
    <script>
        $(function () {
            $('#backid').click(function () {
                window.location.href = "/BootStrap/User/index.html";
            });
        });
    </script>
    Add Or Edit

    BootstrapHandler.ashx:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    namespace myOracle.UI.Ajax
    {
        using myOracle.Bll;
        using System.Data;
        using myOracle.Comm;
        using myOracle.Model;
        using myOracle.Utility;
        using System.Text;
        /// <summary>
        /// BootstrapHandler 的摘要说明
        /// </summary>
        public class BootstrapHandler : BaseHandler
        {
            EmpBll bll = new EmpBll();
    
            public override void SubPR(HttpContext context)
            {
                string action = Query<string>("action");
                switch(action)
                {
                    case "query":
                        Query();
                        break;
                    case "del":
                        Delete();
                        break;
                    case "queryByname":
                        queryByname();
                        break;
                }
            }
            /// <summary>
            /// by YZR
            /// </summary>
            private void queryByname()
            {
                string ename = Query<string>("ename").ToUpper();
                string pageSize = "20";
                string pageIndex = "1";
                DataTable dt = DbHelper.GetDataTableFromIDataReader(bll.GetDataReaderByPage(" ename like '%"+ename+"%'", int.Parse(pageSize), int.Parse(pageIndex)));
    
                string strJson = JSonHelper.DataTableToJson(dt);
                StringBuilder sb = new StringBuilder();
                sb.Append("{"Status":1,"Datas":");
                sb.Append(strJson);
                sb.Append("}");
                response.Write(sb);
            }
    
            /// <summary>
            /// by YZR
            /// </summary>
            private void Delete()
            {
                string empno=Query<string>("empno");
                int count = 0;
                count = bll.DeleteList(empno);
                if (count > 0)
                {
                    HttpContext.Current.Response.Write("共删除了" + count + "条数据");
                }
                else
                {
                    HttpContext.Current.Response.Write("error");
                }
            }
            /// <summary>
            /// by YZR
            /// </summary>
            private void Query()
            {
                string pageSize="20";
                string pageIndex="1";
                DataTable dt=DbHelper.GetDataTableFromIDataReader(bll.GetDataReaderByPage("",int.Parse(pageSize),int.Parse(pageIndex)));
    
                string strJson = JSonHelper.DataTableToJson(dt);
                response.Write(strJson);
            }
        }
    }

    Note:个人觉得,BootStrap确实很强大,如果美工能力稍微差一点的话,配合EasyUI等JS框架也同样可以做出挺漂亮的东西.

    本文仅用于学习!

    END

  • 相关阅读:
    tomcat窗口修改显示名字
    Windows Server 2012 安装oracle11g
    oracle查看和修改session和最大连接数
    ORA-12518 TNS:监听程序无法分发客户机连接的解决办法
    Oracle数据导入导出imp/exp :未知的命令开头。。。忽略了剩余的行
    用Dev C++编写第一个C语言程序
    PAT 甲级 1045 Favorite Color Stripe (30 分)(思维dp,最长有序子序列)
    PAT 甲级 1043 Is It a Binary Search Tree (25 分)(链表建树前序后序遍历)*不会用链表建树 *看不懂题...
    PAT 甲级 1044 Shopping in Mars (25 分)(滑动窗口,尺取法,也可二分)
    数据库设计的基本步骤
  • 原文地址:https://www.cnblogs.com/Francis-YZR/p/4797449.html
Copyright © 2020-2023  润新知