这次要说的是控制EasyUI的高度,平时我公司的项目,用EasyUI较多,然后datagrid这个组件是用的非常多的。平时我们都是固定高度,常见代码如下:

            <table id="tt" style="width: 100%; height: 600px; $(this).width() * 0.2;">

</table>

 
然后本次有些特殊的地方在于,本次公司想让高度自适应屏幕,就是在不同的高度的浏览器里面,这个table始终全屏。我首先想到的是,通过js来获取浏览器高度,再来一个$("#tt").css(“height",xxx)不就搞定了嘛。。。
            后来发现,这个不可行,因为在浏览器全端渲染的时候,table代码已经改变很多, 不能继续用id来控制了,需要用到一下代码:
逻辑大概是:通过页面加载,然后获取浏览器高度,然后再减去头部和尾部的高度,就得出中间高度,然后就是datagrid的高度,然后再通过外围的ID找到真正控制EasyUI DataGrid高度的类,然后再给他设置高度,代码如下:
    <div id="top" class="top">
        <div class="topMenu">
            <div class="topIcon">
                <a title="返回后台首页" href="index.aspx">
                    <img src="../img/home.png" alt="返回后台首页" /></a>
            </div>
            <div class="topIcon">
                <a title="退出登陆" href="../index.aspx">
                    <img src="../img/exit.png" alt="退出登陆" /></a>
            </div>
            <div class="topCloum">
            </div>
            <div class="topIcon" style="margin-left: 50px; margin-top: 20px;">
 
                <div class="line" style="height: 70px;">
                    <img src="../img/pic.png" />
                </div>
                <div class="line" style="height: 40px; text-align: left; color: white; font-weight: bold; line-height: 35px; text-indent: 10px; font-size: 18px;">
                    Admin
                </div>
            </div>
        </div>
    </div>
    <div id="center" class="center" style="background: url(../img/bookMain.png) 0 0 repeat;">
        <div id="lineForDataGrid" class="line">
            <table id="tt" style="width: 100%; height: 600px; $(this).width() * 0.2;">
            </table>
        </div>
    </div>
    <div id="bottom" class="bottom" style="background: url(../img/bookBottom.png) 0 0 no-repeat;">
        用户管理
    </div>
    <script type="text/javascript">
        $(function () {
            var vWindowHeight = document.body.scrollHeight;
            var vCenterHeight = vWindowHeight - 131 - 82;
            $("#center").height(vCenterHeight);
            var vMargionTop = (vCenterHeight - 360) / 2;
            $(".centerBook").css("margin-top", vMargionTop);
            fLoadTable();//加载参数
            $('#tt').datagrid('reload', {
                method: 'firstLoad'
            });
            //设置高度
            $("#lineForDataGrid").find(".panel").find(".datagrid-wrap").css("height", vCenterHeight + "px");
        })
 
 
对代码看不懂,建议下载附件来看。有完整代码。 
 
好了,本次经验分享到此结束,转载请保留原作者地址以及姓名,附件如果未能正常上传,请在评论中留下邮箱,我看到后会发给您。
(本人无偿分享经验,有偿接单制作APP(基于MUI,HTML5+Webservice)和中小型管理系统(基于EasyUI,asp.net,例如项目管理,中介管理,公司内部管理系统、农家乐系统等。),有需要可以联系我。);
 
作者:南宫萧尘  
E-mail:314791147@qq.com
QQ:314791147
日期:2016-04-25 

控制EasyUI DataGrid高度的更多相关文章

  1. easyui datagrid高度自适应问题

    最近在使用datagrid的时候,发现在panel中嵌入一个datagrid时,当panel缩小时,datagrid下面会有一块空白,datagrid高度不能自适应,解决方法是在datagrid外面加 ...

  2. js控制easyui datagrid列的显示和隐藏

    easyui datagrid 列隐藏和显示 $('#grid').datagrid('hideColumn','列field'); //把hideColumn换成showColumn 即为显示列

  3. easyui datagrid 高度布局自适应

    最近在把以前写的一个项目改成用easyui做前端.过程中遇到了不少问题.其中一个就是datagrid不能很好的布局.想了好多办法都有局限.最后想到会不会是布局(easyui-layout)的问题,经过 ...

  4. 如何使easyui的datagrid 高度自适应

    如何使easyui的datagrid 高度自适应? 最开始使用easyui的datagrid加载数据时,对其设置的高度都是固定值,数据较多时table表现为滚动条形式.某天,老大突然需要datagri ...

  5. easyui datagrid复选框控制单选

    使用easyui datagrid的时候,由于对数据表格操作太多,并且有单选和多选功能因此采用复选框.但是在单选的状态,使用CheckOnSelect和singleselect时发现,页面有明显延迟, ...

  6. easyui datagrid 没数据时显示滚动条的解决方法

    今天解决了一个bug,因为datagrid有多列,可是当没有数据的时候,后面的列无法通过滚动条拉动来显示,比较麻烦,而需求要求没有数据也要拉动滚动条查看后面有什么列,一开始在网上找了一些资料,发现都不 ...

  7. easyui datagrid 分页略解

    easyui datagrid 本身自带了分页功能. 但是这个需要你自己控制. 在后台可以得到两个datagrid的参数,rows 和page.其中rows是每页要显示的个数,page是第几页.单纯的 ...

  8. 初识 easyui datagrid

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

  9. easyui datagrid 列隐藏和显示

    easyui datagrid 列隐藏和显示 用js怎么控制列的显示和隐藏?   最佳答案   $('#grid').datagrid('hideColumn','列field');把hideColu ...

随机推荐

  1. 我们是怎么做Code Review的

    前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...

  2. 【Win 10 应用开发】启动远程设备上的应用

    这个功能必须在“红石-1”(build 14393)以上的系统版中才能使用,运行在一台设备上的应用,可以通过URI来启动另一台设备上的应用.激活远程应用需要以下前提: 系统必须是build 14393 ...

  3. Android GridView 通过seletor 设置状态和默认状态

    Android中可以通过selector控制GridView Item 的状态,而省去使用代码控制 GridView View Selector Xml文件 <?xml version=&quo ...

  4. MySQL数据库和InnoDB存储引擎文件

    参数文件 当MySQL示例启动时,数据库会先去读一个配置参数文件,用来寻找数据库的各种文件所在位置以及指定某些初始化参数,这些参数通常定义了某种内存结构有多大等.在默认情况下,MySQL实例会按照一定 ...

  5. Node.js:Buffer浅谈

    Javascript在客户端对于unicode编码的数据操作支持非常友好,但是对二进制数据的处理就不尽人意.Node.js为了能够处理二进制数据或非unicode编码的数据,便设计了Buffer类,该 ...

  6. H5坦克大战之【画出坦克】

    今天是个特殊的日子,圣诞节,也是周末,在这里先祝大家圣诞快乐!喜庆的日子,我们可以稍微放松一下,扯一扯昨天雷霆对战凯尔特人的比赛,这场比赛大威少又双叒叕拿下三双,而且是一个45+11+11的超级三双, ...

  7. Ajax实现原理,代码封装

    都知道实现页面的异步操作需要使用Ajax,那么Ajax到是怎么实现异步操作的呢? 首先需要认识一个对象 --> XMLHttpRequest 对象 --> Ajax的核心.它有许多的属性和 ...

  8. 真假4K电视验证:一张图足矣

    国庆期间笔者逛了一下电视卖场,考虑到国内电视台以及宽带的情况,1080P至少还能用十年,所以只想要个2k电视就够了.然而事与愿违,卖场中八成的都是4k电视,清一色的4k电视让人眼花缭乱.难道4k面板技 ...

  9. The Zen of Python

    Beautiful is better than ugly. 优美总比丑陋好Explicit is better than implicit. 直率总比含蓄好Simple is better than ...

  10. 【从零开始学BPM,Day3】自定义表单开发

    [课程主题] 主题:5天,一起从零开始学习BPM [课程形式] 1.为期5天的短任务学习 2.每天观看一个视频,视频学习时间自由安排. [第三天课程] 1.课程概要 Step 1 软件下载:H3 BP ...