EasyUI datagrid问题整理

更新日期: 2019-03-26阅读: 3k标签: easyui

什么是easyUI

easyui是一种基于jqueryangular.、vuereact的用户界面插件集合。
easyui为创建现代化,互动,JavaScript应用程序,提供必要的功能。
使用easyui你不需要写很多代码,你只需要通过编写一些简单html标记,就可以定义用户界面。
easyui是个完美支持HTML5网页的完整框架
easyui节省您网页开发的时间和规模。
easyui很简单但功能强大的。


使用背景

由于项目需要,主要利用easyUI的数据表格datagrid做后台系统前端部分
使用EasyUI for JQuery

使用js创建数据网格

<table id="dg"></table>
$('#dg').datagrid({
    url:'datagrid_data.json',
    columns:[[
        {field:'code',title:'Code',width:100},
        {field:'name',title:'Name',width:100},
        {field:'price',title:'Price',width:100,align:'right'}
    ]]
});

通过一些参数查询数据

$('#dg').datagrid('load', {
    name: 'easyui',
    address: 'ho'
});

在向服务器改变数据后,更新前台数据

$('#dg').datagrid('reload');


官方文档路径

官方网址:http://www.jeasyui.net/
下载路径:http://www.jeasyui.net/download
官方中文文档:http://www.jeasyui.net/plugins
datagrid数据网格详细介绍:http://www.jeasyui.net/plugin...


遇到的问题

1.初次不加载数据

需求:页面首次加载,datagrid不加载页面数据,点击查询按钮再进行数据渲染

//onBeforeLoad发送加载数据的请求前触发,如果返回 false 加载动作就会取消。
//首次不加载页面数据
onBeforeLoad: function (param) {
    var firstLoad = $(this).attr("firstLoad");
    if (firstLoad == "false" || typeof (firstLoad) == "undefined")
    {
        $(this).attr("firstLoad","true");
        return false;
    }
    return true;
}


2.请求参数,服务器响应415

无法修改content-Type
可以改用loader自定义获取数据
loader:定义如何从远程服务器加载数据。返回 false 则取消该动作。该函数有下列参数:
param:要传递到远程服务器的参数对象。
success(data):当检索数据成功时调用的回调函数。
error():当检索数据失败时调用的回调函数。

 loader: function (param, success, error) {
    //console.log(param, success, error);
        $.ajax({
            type: "POST",
            url : '请求接口',
            contentType: "application/json",
            dataType: "json",
            data: JSON.stringify(param)//数据转换成JSON格式
        }).done(function (data) {
            if (data.total!=0) {
                success(data);
                }
            else {
                $.messager.alert('');
                error();
                }
            }).fail(function () {

        });
    },


3.分页总页数,总条数设置问题

后台返回json数据格式

{
total:总共有多少条数据,
rows:[{,},{,}]//请求页数的结果数据
}


4.修改datagrid默认请求参数名称

//重新制定请求参数名称
onBeforeLoad : function(param){ 
    var page = param.page; //保存下默认请求参数page值
    delete param.page; //删掉默认请求参数page
    param.PageIndex = page; //将默认请求参数名称page换为PageIndex
}

链接: https://www.fly63.com/article/detial/2547

EasyUI之LinkButton禁用和启用

linkbutton 是 jQuery EasyUI 中常用的一个控件,a标签给一个easyui-linkbutton 的class就可以了。disabled在a标签是不管用的,EasyUI的API你会发现:以下才是jQuery禁止和启用linkbutton的正确姿势如下

easyui datagrid数据网格的使用,以及数据传递和返回的格式

datagrid以表格格式显示数据,并为选择、排序、分组和编辑数据提供了丰富的支持。atagrid数据传递给后台分为,1:开发者自己需要传递至后台的数据 2:datagrid封装的传递的数据。

解决easyui combobox赋值boolean类型的值时,经常出现的内容显示的value而不是text的bug

在用easyui写项目时,碰到一个combobox的奇葩bug。本来这是一个很简单的combobox赋值,但是当我真正赋值时却出现了问题,经常出现一个bug,就是赋值完,combobox显示的内容是true或者false,

JS利用新的参数刷新easyui的tab的panel的url

思路:根据浏览器地址,截取?之前的url作为head,然后把url后面的参数解析为object对象,再根据传入的参数对象,重置参数对象,最后重新拼接url

用easyui从servlet传递json数据到前端页面的两种方法

两种方法获取的数据在servlet层传递的方法相同,下面为Servlet中代码,以查询表中所有信息为例。通过easyui包含的table标签中的属性来获取后端传递的数据。

easyui中formatter的用法

当我们使用easyui需要对某一列进行格式化处理value数据时,可以使用formatter进行格式化,这里以一个商品表举例,商品表中有一个商品类型的字段,数据类型为int,想通过formatter方法来实现:

SpringMVC+EasyUI实现页面左侧导航菜单

EasyUI和JQuery文件是放在webapp/resources目录下的, 需要把 jquery-1.7.2.js也引进去, jsp文件中引入EasyUI的css和js文件的顺序如下, 不要随意调整!!! springMVC的静态资源配置是针对resources目录下所有文件的

用easyui实现查询条件的后端传递并自动刷新表格的两种方法

通过datagrid的load方法直接传递参数并自动刷新表格;通过ajax的post函数传递参数并通过loadData方法将数据初始化到表格中;js代码(搜索按钮的点击事件部分)

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!