熟悉公司业务springboot和dataTable和validate在项目中的应用(1)

application.properties    配置文件
spring.profiles.active=dev    还加载哪些配置文件
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource    配置数据源
server.port=8888    tomcat的端口号
logging.path=target/logs    log日志

增删改查的命名标准方式
//        /xxx   GET 首页 index()  index.html
//        /xxx/list POST 列表 list() ajax
//        /xxx/new  GET  到新建页 _new() _new.html
//        /xxx  POST   保存新增 create() ajax
//        /xxx/{id}/edit    到编辑页 edit() edit.html
//        /xxx/{id}  PUT     更新  update() ajax
//        /xxx/{id} DELETE 删除  delete() ajax
//        /xxx/{id} GET  显示   show()   show.html

//        /xxx/yyy  GET  yyy业务    yyy()/toYyy() yyy.html
//        /xxx/{id}/yyy  GET  yyy业务  yyy()/toYyy() yyy.html
//        /xxx/yyy POST/PUT  yyy业务的提交  yyy() ajax
//        /xxx/{id}/yyy POST/PUT yyy业务的提交  yyy() ajax

dadaTable
1.dataTable的表格的标题栏跟随页面滚动
var fixedHeaderOffset = 0;
if (App.getViewPort().width < App.getResponsiveBreakpoint('md')) {
    if ($('.page-header').hasClass('page-header-fixed-mobile')) {
        fixedHeaderOffset = $('.page-header').outerHeight(true);
    }
} else if ($('.page-header').hasClass('navbar-fixed-top')) {
    fixedHeaderOffset = $('.page-header').outerHeight(true);
} else if ($('body').hasClass('page-header-fixed')) {
    fixedHeaderOffset = 64; // admin 5 fixed height
}

var table = $('#dataTable').DataTable({
    processing: true,
    serverSide: true,
    stateSave: true,
是否显示搜索和筛选功能
filter: true,
发送ajax请求
ajax: {
    dataType: 'json',
    type: 'post',
    url: '/wx/weixin/list',
    data: {
        filter_EQB_real: function () {
            return $("select[name='filter_EQB_real']").val();
        }
    }
},
语言和其他
language: Amaz.dataTableLang,
fixedHeader: {
    header: true,
    headerOffset: fixedHeaderOffset
}
表格的结构
dom: "<'row'<'col-md-10 col-sm-12 text-left'f><'col-md-2 col-sm-12'l>r>t<'row'<'col-md-5 col-sm-12'i><'col-md-7 col-sm-12'p>>",
右上角的每页显示多少条的菜单,每页的默认显示条数,排序的方式
lengthMenu: [[10, 20, 30], [10, 20, 30]],
pageLength: 10,
pagingType: "bootstrap_full_number",
order: [[0, "desc"]],
表格的种要显示的数据
columns: [{
    data: "id",
    visible: false
}, {
    data: "accountName"
}, {
    data: "status",
    width: 60
}, {
    data: "real",
    render: function (data) {
        return data == false ? "" : "";
    },

}, {
    data: "envName",
    render: function (data, type, obj) {
        if (data != undefined && data != null && data != '') {
            return '<a class="btn btn-outline blue fun-edit-env"  data-toggle="modal">' + data + '</a>'
        } else {
            return '<a class="btn btn-outline yellow fun-edit-env" data-toggle="modal"><i class="fa fa-plane"></i></a>'
        }
    },
    sortable: false,
    width: 60
}, {
    data: function (obj) {
        var html = '<a href="/wx/weixin/' + obj.id + '/edit" class="btn btn-xs blue"><i class="fa fa-edit"></i></a> ';
        return html;
    },
    sortable: false,
    width: 60,
    class: "text-center"
}]
美化下拉框
$('#dataTable_length select').selectpicker();
搜索
$('#dataTable_filter').html($('.portlet-body .hide').html());
$('.portlet-body .hide').html("");
$("#dataTable_filter .fun-search").on('click', function () {
    table.draw();
});
add,新增
$("#add").click(function () {
    window.location.href = '/wx/process/new';
});
删除
$('body').on('click', '.fun-del', function () {
    var id = $(this).attr('data-id');
    bootbox.confirm("确定要删除数据?", function (result) {
        if (result) {
            $.post('/robot/part/' + id, {_method: 'delete'}, function () {
                table.draw();
            });
        }
    });
});

只要涉及到form的都要用validate
 validForm = function () {
        var form = $('#dataForm');
        if (form.length == 0) {
            return;
        }
        form.validate({
            errorElement: 'span',
            errorClass: 'help-block help-block-error',
            focusInvalid: false,
            ignore: "",
            rules: {},
            errorPlacement: function (error, element) {
                error.insertAfter(element);
            },

            highlight: function (element) {
                $(element).closest('.form-group').addClass('has-error');
            },

            unhighlight: function (element) {
                $(element).closest('.form-group').removeClass('has-error');
            },

            success: function (label) {
                label.closest('.form-group').removeClass('has-error').addClass('has-success');
            },
            submitHandler: function (form) {
                $(form).find(".form-actions button").hide();
                $.ajax({
                    url: form.action,
                    type: "POST",
                    data: $(form).serialize(),
                    error: function (request) {
                        bootbox.alert("Connection error");
                        $(form).find(".form-actions button").show();
                    },
                    success: function (data) {
                        if (data == "create") {
                            bootbox.confirm("提交成功,继续新增吗?", function (result) {
                                if (result) {
                                    Amaz.setRedirect("/robot/part/new");
                                } else {
                                    Amaz.setRedirect("/robot/part");
                                }
                            });
                        } else if (data == "update") {
                            bootbox.alert("修改成功");
                        } else {
                            bootbox.alert(data);
                        }
                        $(form).find(".form-actions button").show();
                    }
                });
            }
        });
        $(".form-actions button.default").click(function () {
            history.go(-1);
        });
    };
//生成wifi弹出消息设置
createWifiMessage = function () {
    var message = $("input[name='message']").val();
    if (message != undefined && message != null && message != ""){
        bootbox.alert(message);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值