zoukankan      html  css  js  c++  java
  • 今日总结

    2021年1月25日:
    今天完成了增加和查询以及删除的部分代码,明白了ajax以及restful风格的使用方法,以下是我的代码:

    首页代码:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>员工列表</title>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <link rel="stylesheet"
    href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
    <script
    src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <script type="text/javascript">
    var pagetotal;
    var pagenum;
    $(function() {
    topage(1);
    $("#checkboxall").click(function(){
    $(".check").prop("checked",$(this).prop("checked"))
    })
    $("#update").click(function() {
    var email = $("#emailupdate").val();
    var regEmail = /^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$/;
    if (!regEmail.test(email)) {
    $("#emailupdate").parent().addClass("has-error");
    $("#emailupdate").next("span").text("邮箱不符合规范!,请重新输入");
    return false;
    }
    $.ajax({
    url : "update/" + $(this).attr("updateid"),
    type : "PUT",
    data : $("#updatebiao").serialize(),
    success : function(data) {
    $("#empUpdateModal").modal("hide");
    topage(pagenum);
    }
    })
    })
    $("#xingming").change(function() {
    $("#xingming").parent().removeClass("has-error");
    $("#xingming").next("label").empty();
    var empName = $(this).val();
    $.ajax({
    url : "checkuser",
    data : "empName=" + empName,
    type : "POST",
    success : function(result) {
    if (result.code == 100) {
    $("#xingming").parent().addClass("has-error");
    $("#xingming").next("label").text("用户名重复,请重新添加!");
    $("#save").attr("click", "false");
    } else {
    $("#save").attr("click", "true");
    }
    }
    });
    })
    $("#save").click(
    function() {
    var click = $(this).attr("click");
    if (validate_add_form() == true && click == "true") {
    $.ajax({
    url : "save",
    type : "POST",
    data : $("#biaodan").serialize(),
    success : function(data) {
    if (data.code == 100) {
    $("#myModal").modal('hide');
    topage(pagetotal);
    } else {
    if (undefined != data.map.error.email) {
    $("#you").parent()
    .addClass("has-error");
    $("#you").next("label").text(
    "邮箱不符合规范!,请重新输入");
    }
    if (undefined != data.map.error.name) {
    $("#xingming").parent().addClass(
    "has-error");
    $("#xingming").next("label").text(
    "用户名不符合规范!,请重新输入");
    }
    }
    }
    })
    }
    })
    $("#add").click(function() {
    $("#myModal form")[0].reset();
    $("#you").parent().removeClass("has-error");
    $("#xingming").parent().removeClass("has-error");
    $("#xingming").next("label").text("");
    $("#you").next("label").text("");
    $("#dept").empty();
    getdept("#dept");
    $("#myModal").modal({
    backdrop : "static"
    })
    })
    })
    function getdept(ele) {
    $.ajax({
    url : "depts",
    type : "GET",
    success : function(data) {
    $.each(data.map.depts, function() {
    var p = $("<option></option>").append(this.dName).attr(
    "value", this.dId);
    p.appendTo(ele);
    })
    }
    })
    }
    $(document).on(
    "click",
    ".bianji",
    function() {
    $("#updatedept").empty();
    getdept("#updatedept");
    $.ajax({
    url : "emp/" + $(this).attr("updateid"),
    type : "GET",
    success : function(data) {
    var name = data.map.emp.name;
    var sex = data.map.emp.sex;
    var email = data.map.emp.email;
    var dname = data.map.emp.dept.dName;
    $("#updatebiao div p").empty();
    $("#updatebiao div p").append(name);
    $("#emailupdate").attr("value", email);
    if (sex == "男") {
    $("#sexupdate1").prop("checked", true)
    } else {
    $("#sexupdate2").prop("checked", true)
    }
    var l = $("#updatedept option").length;
    for (i = 0; i < l; i++) {
    var text = $("#updatedept option:eq(" + i + ")")
    .text();
    if (dname == text) {
    $("#updatedept option:eq(" + i + ")").prop(
    "selected", true);
    }
    }
    }
    })
    $("#empUpdateModal").modal({
    backdrop : "static"
    })
    $("#update").attr("updateid", $(this).attr("updateid"))
    })
    $(document).on("click", ".shanchu", function() {
    var id = $(this).attr("deleteid");
    if (confirm("是否确定删除?")) {
    $.ajax({
    url : "delete/" + id,
    type : "DELETE",
    success : function(data) {
    topage(pagenum);
    }
    })
    }
    })
    $(document).on("click", ".check", function() {
    //判断当前选择中的元素是否5个
    var flag = $(".check:checked").length == $(".check").length;
    $("#checkboxall").prop("checked", flag);
    });
    function topage(p) {
    $.ajax({
    url : "emp",
    data : "p=" + p,
    success : function(data) {
    getemps(data);
    getpagemessage(data);
    getpagetiao(data);
    }
    })
    }
    function getemps(data) {
    $("#table tbody").empty();
    var list = data.map.page.list;
    $.each(list, function() {
    var check = $("<td></td>").append(
    "<input type='checkbox' class='check'/>");
    var id = $("<td></td>").append(this.id);
    var name = $("<td></td>").append(this.name);
    var sex = $("<td></td>").append(this.sex);
    var email = $("<td></td>").append(this.email);
    var dname = $("<td></td>").append(this.dept.dName);
    var button1 = $("<button></button>").attr("updateid", this.id)
    .addClass("btn btn-primary btn-sm bianji").append(
    $("<span></span>").addClass(
    "glyphicon glyphicon-pencil").attr(
    "aria-hidden", "true")).append("编辑");
    var button2 = $("<button></button>").attr("deleteid", this.id)
    .addClass("btn btn-danger btn-sm shanchu").append(
    $("<span></span>").addClass(
    "glyphicon glyphicon-trash").attr(
    "aria-hidden", "true")).append("删除");
    var button = $("<td></td>").append(button1).append(button2);
    $("<tr></tr>").append(check).append(id).append(name).append(sex)
    .append(email).append(dname).append(button).appendTo(
    $("#table tbody"));
    })
    }
    function validate_add_form() {
    $("#xingming").parent().removeClass("has-error");
    $("#xingming").next("label").empty();
    $("#you").parent().removeClass("has-error");
    $("#you").next("label").empty();
    var empName = $("#xingming").val();
    var regName = /(^[a-zA-Z0-9_-]{6,16}$)|(^[u2E80-u9FFF]{2,5})/;
    if (!regName.test(empName)) {
    $("#xingming").parent().addClass("has-error");
    $("#xingming").next("label").text("用户名不符合规范!,请重新输入");
    return false;
    }
    var email = $("#you").val();
    var regEmail = /^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$/;
    if (!regEmail.test(email)) {
    $("#you").parent().addClass("has-error");
    $("#you").next("label").text("邮箱不符合规范!,请重新输入");
    return false;
    }
    return true;
    }
    function getpagetiao(data) {
    $("#tiao").empty();
    var ul = $("<ul></ul>").addClass("pagination");
    var first = $("<li></li>").append(
    $("<a></a>").append("首页").attr("href", "#"));
    var lastpage = $("<li></li>").append(
    $("<a></a>").append("上一页").attr("href", "#"));
    if (data.map.page.hasPreviousPage == false) {
    first.hide();
    lastpage.hide();
    }
    var nextpage = $("<li></li>").append(
    $("<a></a>").append("下一页").attr("href", "#"));
    var last = $("<li></li>").append(
    $("<a></a>").append("末页").attr("href", "#"));
    if (data.map.page.hasNextPage == false) {
    nextpage.hide();
    last.hide();
    }
    ul.append(first).append(lastpage);
    first.click(function() {
    topage(1);
    return false;
    })
    lastpage.click(function() {
    topage(data.map.page.pageNum - 1);
    return false;
    })
    $.each(data.map.page.navigatepageNums, function(index, item) {
    var page = $("<li></li>").append(
    $("<a></a>").append(item).attr("href", "#"));
    if (data.map.page.pageNum == item) {
    page.addClass("active");
    }
    ul.append(page);
    page.click(function() {
    topage(item);
    return false;
    })
    })
    ul.append(nextpage).append(last);
    nextpage.click(function() {
    topage(data.map.page.pageNum + 1);
    return false;
    })
    last.click(function() {
    topage(data.map.page.pages);
    return false;
    })
    $("<nav></nav>").append(ul).appendTo($("#tiao"));
    }
    function getpagemessage(data) {
    pagetotal = data.map.page.total;
    pagenum = data.map.page.pageNum;
    $("#page").empty();
    $("#page").append(
    "当前第" + data.map.page.pageNum + "页 , 总共" + data.map.page.pages
    + "页 , 总" + data.map.page.total + "条记录");
    }
    </script>
    </head>
    <body>
    <div class="modal fade" id="empUpdateModal" tabindex="-1" role="dialog"
    aria-labelledby="myModalLabel">
    <div class="modal-dialog" role="document">
    <div class="modal-content">
    <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal"
    aria-label="Close">
    <span aria-hidden="true">&times;</span>
    </button>
    <h4 class="modal-title">员工修改</h4>
    </div>
    <div class="modal-body">
    <form class="form-horizontal" id="updatebiao">
    <div class="form-group">
    <label class="col-sm-2 control-label">姓名</label>
    <div class="col-sm-10">
    <p class="form-control-static" id="empName_update_static"></p>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">邮箱</label>
    <div class="col-sm-10">
    <input type="text" name="email" class="form-control"
    id="emailupdate" placeholder="请修改邮箱"><span
    class="help-block"></span>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">性别</label>
    <div class="col-sm-10">
    <label class="radio-inline"> <input type="radio"
    name="gender" id="sexupdate1" value="男">男
    </label> <label class="radio-inline"> <input type="radio"
    name="gender" id="sexupdate2" value="女"> 女
    </label>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">部门名称</label>
    <div class="col-sm-4">
    <select class="form-control" name="dId" id="updatedept">
    </select>
    </div>
    </div>
    </form>
    </div>
    <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
    <button type="button" class="btn btn-primary" id="update">更新</button>
    </div>
    </div>
    </div>
    </div>
    <div class="modal fade" id="myModal" tabindex="-1" role="dialog"
    aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
    <div class="modal-content">
    <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal"
    aria-hidden="true">&times;</button>
    <h4 class="modal-title" id="myModalLabel">员工添加</h4>
    </div>
    <div class="modal-body">
    <form class="form-horizontal" id="biaodan">
    <div class="form-group">
    <label class="col-sm-2 control-label">姓名:</label>
    <div class="col-sm-10">
    <input type="text" class="form-control" name="name"
    placeholder="请输入你的姓名" id="xingming"> <label
    class="control-label"></label>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">Email:</label>
    <div class="col-sm-10">
    <input type="email" class="form-control" name="email"
    placeholder="请输入你的邮箱" id="you"> <label
    class="control-label"></label>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">姓别:</label>
    <div class="col-sm-10">
    <label class="radio-inline"> <input type="radio"
    name="sex" value="男" id="sex1">男
    </label> <label class="radio-inline"> <input type="radio"
    name="sex" value="女" id="sex2">女
    </label>
    </div>
    </div>
    <div class="form-group">
    <label class="col-sm-2 control-label">部门名称:</label>
    <div class="col-sm-4">
    <select class="form-control" name="dId" id="dept">
    </select>
    </div>
    </div>
    </form>
    </div>
    <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭
    </button>
    <button type="button" class="btn btn-primary" id="save">保存</button>
    </div>
    </div>
    <!-- /.modal-content -->
    </div>
    <!-- /.modal -->
    </div>
    <div calss="container">
    <div class="row">
    <div class="col-md-12">
    <h1>CRUD</h1>
    </div>
    </div>
    <div class="row">
    <div class="col-md-4 col-md-offset-8">
    <button class="btn btn-primary" id="add">新增</button>
    <button class="btn btn-danger" id="delete">删除</button>
    </div>
    </div>
    <div class="row">
    <div class="col-md-12">
    <table class="table table-bordered table-hover" id="table">
    <thead>
    <tr>
    <th><input type="checkbox" id="checkboxall" /></th>
    <th>员工编号</th>
    <th>员工姓名</th>
    <th>员工性别</th>
    <th>员工邮箱</th>
    <th>部门名称</th>
    <th>操作</th>
    </tr>
    </thead>
    <tbody>
    </tbody>
    </table>
    </div>
    </div>
    <div class="row">
    <div class="col-md-6" id="page"></div>
    <div class="col-md-6" id="tiao"></div>
    </div>
    </div>
    </body>
    </html>

     明天继续学习最后的批量删除。

  • 相关阅读:
    如何只通过Sandboxed Solution启动一个定时执行的操作
    创建与SharePoint 2010风格一致的下拉菜单 (续) 整合Feature Custom Action框架
    创建与SharePoint 2010风格一致的下拉菜单
    《SharePoint 2010 应用程序开发指南》第二章预览
    SharePoint 2013 App 开发 (1) 什么是SharePoint App?
    使用Jscex增强SharePoint 2010 JavaScript Client Object Model (JSOM)
    搜索范围的管理
    SharePoint 2010 服务应用程序(Service Application)架构(1)
    SharePoint 2010 服务应用程序(Service Application)架构(2)
    SharePoint 2013 App 开发 (2) 建立开发环境
  • 原文地址:https://www.cnblogs.com/yitiaokuailedexiaojingyu/p/14327486.html
Copyright © 2011-2022 走看看