EasyUI datagrid自适应问题解决

在使用js 动态创建EasyUI datagrid时,如果设置fit为true,在显示的时候数据的高度为固定高度不能自适应

解决办法是把fit设为false。

但这样设置后又有个问题,如果把columns定义在js里面,及时宽度设置为百分百,单元格的宽度不能随着浏览器的大小而变化

解决办法是把columns定义在页面html上。

最后的代码如下:

html代码

 1 <table id="grid" title="考勤数据" style="width:100%;height:auto">
 2       <thead>
 3            <tr>
 4                <th field="GUID" hidden="hidden">ID</th>
 5                <th field="EmpName" width="20%">姓名</th>
 6                <th field="KqDate" width="20%">日期</th>
 7                <th field="KqTime" width="20%">时间</th>
 8                <th field="IsInvalid" width="16%">是否有效</th>
 9                <th field="Remark" width="20%">备注</th>
10            </tr>
11       </thead>
12 </table>

js代码

 1  $(‘#grid‘).datagrid({
 2         url: ‘/Checking/GetAll?r=‘ + Math.random(), //数据接收URL地址
 3         iconCls: ‘icon-view‘, //图标
 4         fit: false, //自动适屏功能
 5         nowrap: true,
 6         autoRowHeight: false, //自动行高
 7         autoRowWidth: true,
 8         striped: true,
 9         collapsible: false,
10         remoteSort: true,
11         idField: ‘GUID‘, //主键值
12         pagination: true, //启用分页
13         rownumbers: true, //显示行号
14         multiSort: true, //启用排序
15         sortable: true, //启用排序列
16         fitcolumns: true,
17         queryParams: $("#searchform").form2json(), //搜索条件查询
18         singleSelect: true,
19         /*columns: [[
20             { field: ‘GUID‘, hidden: true },
21             { field: ‘EmpName‘, title: ‘姓名‘, width: ‘20%‘, sortable: true },
22             { field: ‘KqDate‘, title: ‘日期‘, width: ‘20%‘, sortable: true },
23             { field: ‘KqTime‘, title: ‘时间‘, width: ‘20%‘, sortable: true },
24             { field: ‘IsInvalid‘, title: ‘有效否‘, width: ‘16%‘, sortable: true },
25             { field: ‘Remark‘, title: ‘备注‘, width: ‘20%‘ }
26         ]],*/
27         toolbar: ‘#divtoolbar‘
28     });
29 }
时间: 2025-01-23 12:16:34

EasyUI datagrid自适应问题解决的相关文章

easyui 布局自适应

最近在把以前写的一个项目改成用easyui做前端.过程中遇到了不少问题.其中一个就是datagrid不能很好的布局.想了好多办法都有局限.最后想到会不会是布局(easyui-layout)的问题,经过实验,最后问题解. 1:比如在项目中用到了datagrid.如果界面比较简单---只有一个datagrid只需要把它的属性fit 设置为true就能实现自动适应窗体.如果在datagrid上方还有其他div的话,div 就会把datagrid挤压到窗体的下方.如果datagrid有分页控件,分页控件

EasyUI datagrid优化

easyui datagrid 在IE上加载速度慢, 150行数据就无法忍受了. firefox加载速度还可以. 优化的点有2个:(1) column的宽度不能设置为自适应, 否则grid刷新速度很慢.  (2) 采用datagrid-scrollview 方式来渲染数据. 参考文章有: http://blog.csdn.net/yanghongchang_/article/details/8017715http://blog.csdn.net/zjh527/article/details/91

JQuery EasyUI 学习——Struts2与EasyUI DataGrid数据表格结合使用显示数据库数据

因为EasyUI DataGrid只要取出后台传过来的一定格式的JSON数据,就可以在前台页面数据表格中,以一定形式显示数据库中的数据.此处,我们使用Struts2框架整合DataGrid,实现数据的显示. 一.页面内容 为了在页面中显示数据库中字段内容,需要定义一个table,通过EasyUI内部设计,自动显示数据,如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF

初识 easyui datagrid

首先应该下载好easyui datagrid所用的各种js 和css 这个可以到官网上去下载. 首先要引入datagrid所引入的js和css. <script src="js/jquery.min.js"></script><script src="js/jquery.easyui.min.js"></script><link rel="stylesheet" type="text

easyui datagrid 批量编辑和提交

前台主要代码: <script type="text/javascript"> $(function() { var $dg = $("#dg"); $dg.datagrid({ url : "servlet/list", width : 700, height : 250, columns : [ [ { field : 'code', title : 'Code', width : 100, editor : "vali

jquery easyui datagrid 排序列

点击排序列,将获取参数有:page=1&rows=10&sort=UserName&order=desc c#后台获取sort跟order参数 string sortColumn = Request.Params["sort"].ToString(); string order = Request.Params["order"].ToString(); jquery easyui datagrid 排序列,布布扣,bubuko.com

easyui datagrid行合并

easyui datagrid行合并 合并方法 /** * EasyUI DataGrid根据字段动态合并单元格 * 参数 tableID 要合并table的id * 参数 colList 要合并的列,用逗号分隔(例如:"name,department,office"); */ function mergeCellsByField(tableID, colList) { var ColArray = colList.split(","); var tTable =

EasyUI DataGrid 编辑单元格

之前文章 EasyUI DataGrid可编辑单元格实现可编辑单元格,如果有多列都需要可编辑 当点击一个单元格 则此整行都会进行编辑 如下图: 现改为单击某个单元格只对此单元格进行可编辑 <TABLE>标记添加 onClickCell <table id="dg" class="easyui-datagrid" data-options="onClickCell: onClickCell"> 需要进行编辑的列上添加 edi

easyUI datagrid笔记

easyUI datagrid 简单使用与注意细节 背景: 业余爱好,使用了一下easyUI的搜索框与数据表格,并把两者整合起来进行使用. 使用前提(引入需要的js and css): <link rel="stylesheet" type="text/css" href="./css/easyui.css"> <link rel="stylesheet" type="text/css"