工作20天总结

博主上班20天收获较大,自学了zTree、layui-layer、layui-table、web-service等新技术,虽多为代码复制,但会思考代码实现功能的原因,还附上了用layui-table实现增删改查功能的页面代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前为止,已经正式上班了20天,收获还是很大的,自学了一些新技术,有:zTree、layui-layer、layui-table、web-service,虽然只是一些简单的应用,但是收获还是很大的,大部分代码都是copy过来的,现在的我只是代码的搬运工,但是在学习过程中,不能盲目的做搬运工,我会思考为何这样的代码会实现功能,只想做一个代码的搬运工,不是一个好的程序员。
附上一段用layui-table实现的增删改查功能的页面:
`<%@ page language=”java” import=”java.util.*” pageEncoding=”UTF-8”%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+”://”+request.getServerName()+”:”+request.getServerPort()+path+”/”;
%>




”>

<title>My JSP 'table.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" type="text/css" href="res/layui/css/layui.css">
<script type="text/javascript" src="res/js/jquery-1.8.3.min.js"></script>

<div class="demoTable">
    搜索姓名:
    <div class="layui-inline">
        <input class="layui-input" name="id" id="demoReload"
            autocomplete="off">
    </div>
    <button class="layui-btn" data-type="reload">搜索</button>
</div>

<button class="layui-btn" onclick="location='patients/add.jsp'">添加</button>

<div class="layui-btn-group demoTable">
    <button class="layui-btn" data-type="delCheckData">删除选中行数据</button>
    <!-- <button class="layui-btn" data-type="getCheckLength">获取选中数目</button>
    <button class="layui-btn" data-type="isAll">验证是否全选</button> -->
</div>

<table class="layui-hide" id="test" lay-filter="useruv"></table>

<script src="res/layui/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->

<script>
    //加载layui的table表格功能
    layui.use('table', function() {
        var table = layui.table;
        table.render({
            elem : '#test',
            url : 'showTable.action',
            cellMinWidth : 80, //全局定义常规单元格的最小宽度,layui 2.2.1 新增
            page : true,
            cols : [ [
                {
                    width : 80,
                    type  : 'checkbox'
                }
                , {
                    width : 80,
                    title : '序号',
                    type  : 'numbers'
                }
                , {
                    field : 'name',
                    width : 80,
                    title : '姓名',
                    sort : true
                }
                , {
                    field : 'sex',
                    width : 70,
                    title : '性别'
                }
                , {
                    field : 'age',
                    width : 70,
                    title : '年龄'
                }
                , {
                    field : 'bedId',
                    width : 70,
                    title : '床号'
                } //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增
                , {
                    field : 'hospitalNum',
                    width : 70,
                    title : '病历号'
                }
                , {
                    field : 'admissionDate',
                    width : 80,
                    title : '住院日期',
                    sort : true
                }
                , {
                    field : 'diagnose',
                    width : 70,
                    title : '诊断'
                }
                , {
                    field : 'operationDate',
                    width : 80,
                    title : '手术日期',
                    sort : true
                }
                , {
                    field : 'zgys',
                    width : 170,
                    title : '操作',
                    templet : '#barDemo'
                }
            ] ]
        });
        //监听工具条
        table.on('tool(useruv)', function(obj) { //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
            var data = obj.data; //获得当前行数据
            var layEvent = obj.event; //获得 lay-event 对应的值(也可以是表头的 event 参数对应的值)
            var tr = obj.tr; //获得当前行 tr 的DOM对象

            if (layEvent === 'detail') { //查看
                //do something
            } else if (layEvent === 'del') { //删除
                layer.confirm('真的删除行么', function(index) {
                    //obj.del(); //删除对应行(tr)的DOM结构,并更新缓存
                    layer.close(index);
                    //向服务端发送删除指令
                    $.ajax({
                        url:"patientsDel.action",
                        type:"POST",
                        data:{
                            "p.id":data.id
                        },
                        dataType:"json",
                        success:function(data){
                            table.reload('test',{});
                        },error:function(){
                            alert("error!")
                        },
                    })
                    //layer.close(index);
                    /* $.post('patientsDel.action',{
                        p.id : data.id,
                    },function(data){
                        table.reload();
                    }) */
                    //table.reload();
                });
            } else if (layEvent === 'edit') { //编辑
                //do something
                location='patientsPreUpdate.action?p.id='+data.id;
                //同步更新缓存对应的值
                /* obj.update({
                    username : '123',
                    title : 'xxx'
                }); */
            }
        });
        var $ = layui.$,
            active = {
                delCheckData : function() { //多选删除
                    var checkStatus = table.checkStatus('test'),
                        data = checkStatus.data;
                    if (null != data && data != "") {
                        var ids = "";
                        for (var index in data) {
                            ids += data[index].id+",";
                        }
                        layer.confirm('真的删除行么', function(index) {
                            layer.close(index);
                            $.post('patientsDelAll.action',{ids:ids},function(data){
                                table.reload('test',{});
                            })
                        })
                    }else{
                        layer.alert("请选中删除行!");
                    }
                },
                reload : function() { //条件查询  
                    var text = $("#demoReload").val();
                    /* $.post('patientsSearch.action', {
                        text : text
                    }, function(data) {
                        alert(data)
                        //table.reload('test', data);
                    }) */
                    table.reload('test', {//重载table表格
                        url : 'patientsSearch.action',
                        where : {
                            text : text
                        }
                    })
                }
                /* getCheckLength : function() { //获取选中数目
                    var checkStatus = table.checkStatus('test'),
                        data = checkStatus.data;
                    layer.msg('选中了:' + data.length + ' 个');
                },
                isAll : function() { //验证是否全选
                    var checkStatus = table.checkStatus('test');
                    layer.msg(checkStatus.isAll ? '全选' : '未全选')
                } */
            };
        //匹配相应的监听按钮
        $('.demoTable .layui-btn').on('click', function() {
            var type = $(this).data('type');
            active[type] ? active[type].call(this) : '';
        });
    })
</script>
<script type="text/javascript" id="barDemo">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>



`

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值