easyui--6.完整案列演示

1      布局

1.1  引入常用jar

<link rel="stylesheet" type="text/css" href="../easyui/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="../easyui/themes/icon.css">
<!--引入Jquery主文件-->
<script type="text/javascript"src="../easyui/jquery.min.js"></script>
<!--引入JqueryEasyUI主文件-->
<script type="text/javascript"src="../easyui/jquery.easyui.min.js"></script>
<!--让easyUI支持中文-->
<script type="text/javascript"src="easyui/locale/easyui-lang-zh_CN.js"></script>

1.2  Layout

<body class="easyui-layout">
    <div data-options="region:'north',title:'NorthTitle',split:false" style="height:100px;"></div>
    <div data-options="region:'south',title:'SouthTitle',split:true" style="height:100px;"></div>
    <!-- <div data-options="region:'east',iconCls:'icon-reload',title:'East',split:true"style="width:100px;"></div>-->
    <div data-options="region:'west',title:'West',split:true"style="width:250px;"></div>
    <div data-options="region:'center'"style="padding:0px;background:#eee;">
</div>
</body>

1.3  操作效果图

删除可以看做批量操作的一种

 

2      展示数据

2.1  datagrid

<table id="dg" class="easyui-datagrid"style="width:100%;height:95%">
    <thead>
    <tr>
        <th data-options="field:'ck',checkbox:true,width:30,fixed:false"></th>
        <th data-options="field:'stuNum',width:50,fixed:false">学号</th>
        <th data-options="field:'stuName',width:300,fixed:false">姓名</th>
        <th data-options="field:'stuSex',width:300,fixed:false">性别</th>
        <th data-options="field:'stuAge',width:100,fixed:false">年龄</th>
        <th data-options="field:'stuQQ',width:100,fixed:false">QQ</th>
        <th data-options="field:'operation',width:100,fixed:false,formatter:actionFormatter">操作</th>
    </tr>
    </thead>
</table>

选择框:名称是固定的ck

 

<div id="tb">
    <a href="#" class="easyui-linkbutton"data-options="iconCls:'icon-add'"οnclick="addStu()"> 新建</a>
    <a class="easyui-linkbutton"data-options="iconCls:'icon-cancel'"οnclick="delBatchStu()"> 批量删除</a>
</div> 

2.2  初始化(datagrid+列属性)

 

$(function() {
    $("#dg").datagrid({
        url:'stu?flag=getAllStu',
        fitColumns:true,
        pagination:true,
        selectOnCheck:false,
        checkOnSelect:false,
        toolbar:'#tb',
        onLoadSuccess:function(data){
            $('.edit').linkbutton({plain:true,iconCls:'icon-edit'});
            $('.cancel').linkbutton({plain:true,iconCls:'icon-cancel'});
        }
    })
}); 

采用批量删除和删除二合一方式

function actionFormatter(value,row,index){
    var edit=  '<a class="edit" title="编辑" οnclick="editStu(\''+ row.stuId + '\')"></a>';
    var cancel=  '<a class="cancel" title="删除" οnclick="delOneStu(\''+row.stuId + '\')"></a>';
    return operation = edit + " " +cancel;
}

2.3  后台

 

 

3      增加修改

3.1  增加修改框

3.1.1  框

 

3.1.2  表单

 

<div id="dlg" class="easyui-dialog" style="width:400px;height:300px;background:gray"
     data-options="buttons:'#btns',closed:true,modal:true">
    <form id="fm" method="post">
        <table cellpadding="5" align="center">
            <caption>学员信息</caption>
            <tr>
                <td>学号:</td>
                <td><input class="easyui-textbox" type="text" name="stuNum" data-options="required:true" /></td>
            </tr>
            <tr>
                <td>姓名:</td>
                <td><input class="easyui-textbox" type="text" name="stuName" data-options="required:true,validType:'email'"/></td>
            </tr>
            <tr>
                <td>性别:</td>
                <td><input class="easyui-textbox" type="text" name="stuSex" data-options="required:true" /></td>
            </tr>
            <tr>
                <td>年龄:</td>
                <td><input class="easyui-numberspinner" name="stuAge" data-options="min:1,max:150,required:true"  /></td>
            </tr>
            <tr>
                <td>QQ:</td>
                <td>
                    <input class="easyui-textbox" name="stuQQ" data-options="required:true"  />
                </td>
            </tr>
        </table>
    </form>
</div> 

3.1.3  保存取消按钮

 

<div id="btns">
    <a href="#" class="easyui-linkbutton"οnclick="saveStu()">保存</a>
    <a href="#" class="easyui-linkbutton"οnclick="javascript:$('#dlg').dialog({closed:true})">取消</a>
</div> 

3.2  Js

3.2.1  增加操作

 

var url;            //只是用于增加/或修改的 保存操作的地址变化
function addStu(){
    $("#dlg").dialog({
        title:"增加",
        closed:false
    });
    //清空表单
    $("#fm").form("reset");
    url="stu?flag=addStu";
}

3.2.2  修改操作

function editStu(id){
    if(id){                                        //判断是否有数据,没数据为空
        //发起获取数据请求,并进行相应的数据显示
        $.ajax({
            url: 'stu',
            type: 'get',
            data: {
                flag:'getStuById',
                id:id
            },
            timeout: 20000,
            success: function (data) {
                // var data = $.parseJSON(data)
                var data = JSON.parse(data);
                $("#dlg").dialog({
                    title:"修改",
                    closed:false
                });
                $("#fm").form("load",data['row']);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert("访问后台发生错误:" + XMLHttpRequest.status)
            }
        });
        url="stu?flag=uptStu&&id="+id;
    }
}

3.2.3  保存操作

 

//保存操作  不要狭义的理解  增加有保存操作  修改有保存操作
function saveStu(){
    $('#fm').form('submit', {
        url:url,
        onSubmit: function(){
            //表单验证
        },
        success:function(data){
            var data=eval("("+data+")");
            if(data.result){
                $('#dlg').dialog({closed:true});
                $("#dg").datagrid("reload");
            }
        }
    });
} 

使用jquery ajax中的serialize()序列化将前台表单数据传递给后台,

  

4      删除

4.1  统一操作

4.1.1  批量删除

function delBatchStu() {
    var rows= $('#dg').datagrid('getChecked');
    if (rows.length== 0) {
        $.messager.alert("警告","请先选择要删除的记录!");
        return;
    }
    var ids = '';
    for (var i = 0; i < rows.length; i++) {
        ids += rows[i]['stuId'] + ",";
    }
    ids = ids.substring(0, ids.length - 1);
    deleteStu(ids);
}

4.1.2  删除

function delOneStu(id){
    deleteStu(id)
} 

4.1.3  删除操作

//删除操作
function deleteStu(ids) {
    $.messager.confirm("警告","您真的确定要删除吗?",function () {
        $.ajax({
            url: "stu",
            type: "post",
            data: {
                flag:"deleteStu",
                ids: ids
            },
            datatype:'json',
            success: function (data) {
                var data=eval("("+data+")");
                alert(data.msg);
                //重新加载记录
                $("#dg").datagrid("reload");
            }
        });
    });
}

4.1.4  后台

 

4.2  删除按钮

4.2.1  Js

function delStu(id){
    // varrow=$("#dg").datagrid("getSelected");
    if(id){
        $.messager.confirm('确认','您确认想要删除记录吗?',function(r){
            if (r){
                $.post('stu?flag=delStu',{id:id},function(data){
                    //alert(data);
                    if(data.result)
                    {
                        $("#dg").datagrid("reload");
                    }
                },"json");
            }
        });
    }
}

4.2.2  后台



 源码:http://download.csdn.net/download/qq_26553781/10147154

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值