对easyui datagrid进行扩展,当滚动条拉直最下面就异步加载数据。
以下方法是通用的,只要把datagrid定义为全局的即可,其他部分的代码不用进行修改!
可以把以下代码放入到一个单独的js文件,然后再需要的页面引入即可!
$(function(){
try{
$(".datagrid-body").scroll(function(){
var sheight = $(this)[0].scrollHeight;
var top=$(this)[0].scrollTop;
var height=$(this).height();
//判断是否到达底部
document.title='top:'+(top+height)+' heigth:'+(sheight-20);
if((top+height)+20==sheight){
document.title=datagrid.datagrid('options').url;
//请求json
//page;// 当前页
//rows;// 每页显示记录数
//拼接表单的值
var url=datagrid.datagrid('options').url;
url+='?params=xxx';
var params='';
$("#searchForm").find('input').each(function(index){
var obj=$(this);
if(obj.prop('name')!=''&&obj.val()!=''){
params+='&'+obj.prop('name')+'='+obj.val();
}
});
//获取页码、每次默认加载10条
var num=10;
//获取行数
var row=datagrid.datagrid('getRows').length;
var page=(row/num)+1; //求出下一页
//$.post();
url+=params+'&page='+page+'&rows=10';
//请求数据
$.post(url,function(data){
var json=$.parseJSON(data).rows;
for(var i=0;i<json.length;i++){
//自动拼接字段和赋值
var row='';
for(var item in json[i]){
row+='"'+item+'":'+'"'+json[i][item]+'",';
}
row=row.substring(0,row.length-1);
row='{'+row+'}';
row=$.parseJSON(row);
datagrid.datagrid("appendRow",row);
}
});
}else{
document.title='滚动条没有到达底部';
}
});
}
catch(e){
alert(e);
}
});
对easyui datagrid进行扩展,当滚动条拉直最下面就异步加载数据。的更多相关文章
- easyui datagrid 异步加载数据时滚动条有时会自动滚到最底部的问题
在使用easyui 的datagrid异步加载数据时发现滚动条有时会自动滚到最底部.经测试发现,如果加载数据前没有选中行则不会出现这个问题.这样我们可以在重新异步加载数据前取消选中行就可以避免这个问题 ...
- jquery easyui easyui-treegrid 使用异步加载数据
jquery easyui easyui-treegrid 使用异步加载数据 jquery easyui easyui-treegrid 异步请求 >>>>>>&g ...
- WP8_当滚动到滚动条的70%时,自动加载数据效果实现
Touch.FrameReported += Touch_FrameReported; void Touch_FrameReported(object sender, TouchFrameEven ...
- easyui datagrid plunges 扩展 插件
项目使用 springmvc4.x spring4.x hibernate4.x easyui 为了便于开发,扩展了easyui 的 datagrid 功能,下面直接贴上扩展代码: /** * ...
- 解决easyui datagrid加载数据时,checkbox列没有根据checkbox的值来确定是否选中
背景: 昨天帮朋友做一个easyui datagrid的小实例时,才发现easyui datagrid的checkbox列,没有根据值为true或false来选中checkbox,当时感觉太让人失 ...
- Easyui datagrid加载数据时默认全选的问题
问题描述: 最近使用 Easyui datagrid 展示数据,之前一直使用很正常,今天出现了一个怪异问题 加载数据后,只要点击选中列 ck 的任意行或多行,再刷新时整个datagrid的所有数据都 ...
- jquery easyui使用(三)······datagrid加载数据(已解决)
<div id="table_Data"> </div> $("#table_Data").datagrid({ toolbar: '# ...
- (转帖)关于easyui中的datagrid在加载数据时候报错:无法获取属性"Length"的值,对象为null或未定义
结贴说明: 很感谢sp1234等人的热心帮忙和提醒,现在我主要说明下问题所在: 首先我在独立的js文件中,直接把测试数据loaddata进去datagrid是没有问题的.var kk = {" ...
- winform DataGridView控件判断滚动条是否滚动到当前已加载的数据行底部 z
http://www.zuowenjun.cn/post/2015/05/20/162.html 判断 DataGridView控件滚动条是否滚动到当前已加载的数据行底部,其实方法很简单,就是为Dat ...
随机推荐
- javascript中的原型理解总结
经过几天研究查找资料,对原型终于有点理解了,今天就做下总结,不对之处,希望各位能够提出. 1.每一个Javascript对象(null除外)都和另一个对象相关联,“另一个”对象就是我们今天所要总结的原 ...
- swift 实现漂亮的粒子效果CAEmitterLayer
一些粒子效果 我们经常会在一些游戏或者应用中看到一些炫酷的粒子效果,我们在iOS中也能很轻松的搞一些粒子效果 我们本次做得是一个下雪的效果,看下效果图 源码地址: https://github.com ...
- Java Web的数据库操作(一)
一.JDBC技术 1.JDBC简介 JDBC是Java程序与数据库系统通信的标准API,它定义在JDK的API中,通过JDBC技术,Java程序可以非常方便地与各种数据库交互,JDBC在Java程序与 ...
- 函数返回char* 的解决方案
在C语言中,自动变量在堆栈中分配内存.当包含自动变量的函数或代码块退出时,它们所占用的内存便被回收,它们的内容肯定会被下一个所调用的函数覆盖.这一切取决于堆栈中先前的自动变量位于何处,活动函数声明了什 ...
- Windows server 2008系统下FTP服务器的安装
一.在 Windows 服务器上安装 FTP 服务 1. 在"开始"菜单上,单击"管理工具",然后单击"服务器管理器". 2. 在" ...
- 网页HTML
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- Ajax客户登陆验证
服务器端操作方便之处我就不吹了,地球人都知道,它最烦莫过于页面刷新,头都被刷晕了,而且他在刷新的时候,还触发服务器端的事件,现在Ajax的出现,他们的结合是发展的必然! 一.介绍一下Aj ...
- centos上如何安装git
安装依赖包 1.yum -y install zlib-devel openssl-devel perl cpio expat-devel gettext-devel 2.yum install au ...
- JAVA_build_ant_cmd pass muti param
ant -f buildFileName -Dpropretyname1=value1 -Dpropretyname2=value2 ant [options] [target [target2 [ ...
- 编译cwm-recovery(含部分修改步骤)[转]
1. 同步cm10.1的源码,具体操作请百度之-- 2. 打开终端,到源码目录下: cd Android/cm10.1 //我的源码目录 3. 如果不想使用cm10 ...