CRUD简单模板


一、删除

1.查看是否选中了这一行

2.如果没有选中,给出提示(未选中)

3.如果选中,让用户确认是否删除

4.如果确认删除,直接访问后台进行删除



employee.js页面添加

//删除

delete(){

    //1.查看是否选中了这一行

    var row = employeeDataGrid.datagrid("getSelected");

    //2.如果没有选中,给出提示(未选中)

    if(!row){

        $.messager.alert("提示","要休那个?小哥!","info");

        return;

    }

    //3.如果选中,让用户确认是否删除

    $.messager.confirm('确认','您要狠心干掉我嘛?',function(r){

        if (r){

            //4.如果确认删除,直接访问后台进行删除

            $.get("/employee/delete",{id:row.id},function(result){

                if(result.success){

                    //成功后刷新

                    employeeDataGrid.datagrid("reload");

                }else{

                    //把失败信息做一个提示

                    $.messager.alert("提示",`搞错了! 原因是:${result.msg}  ~~再来`,"error");

                }

})

}

    });

},



EmployeeController.java

/**

* 咱们以后写功能,很有可能是有前端人员的!

*  我们已经商量好了:{success:true,msg:xxxx}

*/

@RequestMapping("/delete")

@ResponseBody

public JsonResult delete(Long id){

    try {

        employeeService.delete(id);

    } catch (Exception e) {

        e.printStackTrace();

        return new JsonResult(false,e.getMessage());

    }

    return new JsonResult();

}



在工具包common中新建JsonResult表

/**

* 后台操作后返回的数据

*/

public class JsonResult {

    private Boolean success= true;

    private String msg;

    public JsonResult() {

}

    public JsonResult(Boolean success, String msg) {

        this.success= success;

        this.msg= msg;

    }

    public Boolean getSuccess() {

        return success;

    }

    public void setSuccess(Boolean success) {

        this.success= success;

    }

    public String getMsg() {

        return msg;

    }

    public void setMsg(String msg) {

        this.msg= msg;

    }

}



二、添加

1.点击添加  要弹出一个from表单   (在Easyui中找)



在employee.jsp中加入表单弹出框


确认密码。年龄验证。用户名是否占用

<%--表单弹出框--%>

<div id="employeeDialog" class="easyui-dialog" title="功能操作"

data-options="iconCls:'icon-save',closed:true,modal:true,buttons:'#formBtns'"

    style="padding:10px">

    <form id="employeeForm" method="post">

        <input id="employeeId" type="hidden" name="id" />

        <table cellpadding="5">

            <tr>

                <td>用户名:</td>

                <td><input class="easyui-validatebox"  type="text" name="username" data-options="required:true,validType:'checkName'"></input></td>

            </tr>

            <tr data-show="false">

                <td>密码:</td>

                <td><input id="password" class="easyui-validatebox" type="text" name="password" data-options="required:true"></input></td>

            </tr>

            <tr data-show="false">

                <td>确认密码:</td>

                <td><input class="easyui-validatebox" type="text" name="repassword" validType="equals['password','id']" data-options="required:true"></input></td>

            </tr>

            <tr>

                <td>邮箱:</td>

                <td><input class="easyui-validatebox" type="text" name="email" data-options="required:true,validType:'email'"></input></td>

            </tr>

            <tr>

                <td>年龄:</td>

                <td><input class="easyui-validatebox" type="text" name="age" data-options="required:true,validType:'integerRange[18,60]'"></input></td>

            </tr>

            <tr>

                <td>归属地:</td>

                <td>

                    <input name="department.id" class="easyui-combobox" panelHeight="auto"  style="width:120px"

                          data-options="required:true,valueField:'id',textField:'name',url:'/util/deptList'" />

                </td>

            </tr>

        </table>

    </form>

</div>



<%--弹出框(表单)操作--%>

<div id="formBtns">

    <a href="javascript:;" data-method="save"  class="easyui-linkbutton c1">确~认</a>

    <a href="javascript:;" onclick="$('#employeeDialog').dialog('close')" class="easyui-linkbutton c5">取~消</a>

</div>



employee.js中 function 添加一个控件获取

var employeeDialog =$("#employeeDialog");


add(){

    //把所有带data-show的元素显示起来

    $("*[data-show]").show();

    $("*[data-show] input").validatebox("enable");

    //打开对话框

    employeeDialog.dialog("center").dialog("open");

    //把form中的数据清空

    employeeForm.form("clear");

},



添加_验证

head.jsp中引入Easyui的验证插件

<%--引入Easyui验证插件--%>

<link href="/easyui/plugin/validatebox/jeasyui.extensions.validatebox.css" rel="stylesheet" />

<script src="/easyui/plugin/validatebox/jeasyui.extensions.validatebox.rules.js"></script>



用户是否被占用


在没有的情况下 我们需要自定义验证  首先在employee.js中

//Easyui的自定义验证

$.extend($.fn.validatebox.defaults.rules, {

    //验证的名称

    checkName: {

        /**

        * @param value 输入框中的值

        * @param param 调用验证输入的参数(数组)

* @returns {boolean}

*/

        validator: function(value, param){

            //拿到相应的id

            var empId = $("#employeeId").val();

            //这里获取的是字符串

            var result = $.ajax({

                url: "/employee/checkName",

                data:{username:value,id:empId},

                async: false //同步请求

            }).responseText;

            //返回false代码验证失败,返回true代码通过验证

            return result==="true";

        },

        //出错后的信息

        message: '该用户名已经被大神使用!!!'

    }

});



三、修改


employee.js也是要弹出并回显


var employeeForm =$("#employeeForm");


edit(){

    var row = employeeDataGrid.datagrid("getSelected");

    if(!row){

        $.messager.alert("提示","要哪个!小哥!","info");

        return;

    }

    //把所有带data-show的元素隐藏起来

    $("*[data-show]").hide();

    $("*[data-show] input").validatebox("disable");

    //打开对话框

    employeeDialog.dialog("center").dialog("open");

    //把form中的数据清空

    employeeForm.form("clear");

    //咱们部门要的字段:"department.id"

    // row的部门部门:  department.id

    if(row.department){

        row["department.id"] = row.department.id;

    }

    //完成修改的回显

    employeeForm.form("load",row);

},



在employee.jsp中 先给一个id

<input id="employeeId" type="hidden" name="id" />


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342