Javascrpt 页面工具
/**
* 笔者:DL
* 时间:2014-3-19
* PagingTool模块提供最基本的、网页工具栏。和页面数据 回电话 可扩展性 分页工具栏介绍,和页面呈现的数据
* 主意事项:必须引用json.js
* @module PagingTool
*/
var PagingTool = {}
PagingTool.Init = {} //初始化參数
PagingTool.funPageCallBack = function (data) {
var pParams = data.pParams;//查询參数
var pageCount = data.pageCount;//每页显示条目
var totalPages = data.totalPages;//总页数
var pageIndex = data.pParams.intNowPage; // 当前页
var pageTargetId = data.pageTargetId;
var totalCount = data.totalCount;
var pageHtml = "";
if (totalPages > 1) {
var beginPage = 1, endPage = 1;
beginPage = parseInt((pageIndex - 1) / pageCount) * pageCount + 1;
endPage = parseInt((pageIndex - 1) / pageCount) * pageCount + pageCount;
endPage = endPage > totalPages ?
totalPages : endPage;
if (pageIndex > 1) //上一页
{
pParams["intNowPage"] = 1;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'><<</a>';
pParams["intNowPage"] = pageIndex - 1;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'><</a>'
}
else {
pageHtml += '<a href=\"javascript:;\" ><<</a>'
pageHtml += '<a href=\"javascript:;\" ><</a>'
}
if (beginPage - 1 > 1) {
pParams["intNowPage"] = beginPage - 1;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'>...</a>'
}
//中间页码
for (var i = beginPage; i <= endPage; i++) {
if (pageIndex == i) {
pageHtml += '<a href=\"javascript:;\" class=\"current\"> ' + i + '</a>';
}
else {
pParams["intNowPage"] = i;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'>' + i + '</a>'
}
}
if (totalPages - endPage > 1) {
pParams["intNowPage"] = endPage + 1;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'>...</a>'
}
if (pageIndex < totalPages) {
pParams["intNowPage"] = pageIndex + 1;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'>></a>'
pParams["intNowPage"] = totalPages;
pageHtml += '<a href=\"javascript:;\" onclick=\'PagingTool.Paging(' + JSON.stringify(pParams) + ')\'>>></a>';
}
else {
pageHtml += '<a href=\"javascript:;\" >></a>'
pageHtml += '<a href=\"javascript:;\">>></a>'
}
$("#" + pageTargetId).html(pageHtml);
} else {
$("#" + pageTargetId).html("");
}
}
/**
* 返回当前集合中指定位置的元素
* @method PagingTool.Paging 分页操作方法
* @param {pParams} 查询条件 { "intUstate": 0, "intNowPage": 1, "intType": 1, "intPageSize": 3 }
* @return {HTML} 返回html loadingIcon.gif
*/
PagingTool.Paging = function (pParams) {
var funDCallBack = PagingTool.Init.DataCallBack;
var funPCallBack = PagingTool.Init.PageCallBack
var appendId = PagingTool.Init.AppendId;
var targetId = PagingTool.Init.PageTargetId;
var pageSize = PagingTool.Init.PageSize;
var pageCount = PagingTool.Init.PageCount;
$.ajax({
url: PagingTool.Init.Url,
data: pParams,
type: PagingTool.Init.Type,
dataType: "json",
beforeSend: function () {
var isElement = document.getElementById(appendId).nodeName;
var html = "";
if (isElement == "DIV") {
html = '<div id="sload" style="text-align:center; margin-top:30px;"><image src="/Content/image/base/loadingIcon.gif" /></div>';
}
else {
html = '<tr id="sload"><td colspan="50" style="text-align:center;"><image src="/Content/image/base/loadingIcon.gif" /></td></tr>';
}
$("#" + appendId).html(html);
},
complete: function () {
$("#sload").remove();
},
error: function () {
$("#sload").remove();
},
success: function (data) {
var totalCount = data.TotalCount;
var jieanCount = data.jieanCount;
if (totalCount > 0) {
var totalPages = parseInt((totalCount - 1) / pageSize + 1);
var callDBackParams = { "appendId": appendId, "jsonData": data, "totalCount": totalCount, "jieanCount": jieanCount };
var callPBackParams = { "pageTargetId": targetId, "pageSize": pageSize, "totalPages": totalPages, "pageCount": pageCount, "totalCount": totalCount, "pParams": pParams };
funDCallBack(callDBackParams);//回到函数
funPCallBack(callPBackParams);//分页控件回调函数
}
else {
var desc = returnNull(appendId, 20, "", "");//提示没有数据
$("#" + appendId + "").html(desc);
$("#" + targetId + "").html("");
//没有数据
}
}
});
}
/* 方法说明 使用说明 方法 PageTargetId【分页条呈现位置ID】 AppendId【数据呈现ID】DataCallBack【数据回调函数】PageCallBack【页面呈现回调函数】
PagingTool.Init = { "Url": "/LshSystem/User/AjaxIndex", "Type": "POST", "PageCount": 3, "PageSize": 3, "PageTargetId": "pageId", "AppendId": "appendId", "DataCallBack": funDataCallBack, "PageCallBack": PagingTool.funPageCallBack };
PagingTool.Paging({ "intUstate": 0, "intNowPage": 1, "intType": 1, "intPageSize": 3 });
//数据回调函数 页面操作逻辑
funDataCallBack= function(data) {
var appendId = data.appendId;
var jsonData = data.jsonData.PageData;
var htmlData = "";
for (var i = 0; i < jsonData.length; i++) { //便利数据
htmlData += "<tr id=\"Temp" + i + "\">" +
"<td class=\"thcenter\">" +
"<input type=\"checkbox\" value=\"" + jsonData[i].UAccount + "\" name=\"ckUAccount\" /></td>" +
"<td id=\"UAccount\">" + jsonData[i].UAccount + "</td>" +
"<td id=\"SFName\">" + jsonData[i].SFName + "</td> </tr>"
}
$("#" + appendId + "").html(htmlData);
}
*/
版权声明:本文博客原创文章,博客,未经同意,不得转载。
Javascrpt 页面工具的更多相关文章
- 如何编辑PDF文件,怎么使用PDF裁剪页面工具
在编辑PDF文件的时候,往往会有很多的小技巧可以使用,在编辑PDF文件的时候,怎么对文件的页面进行裁剪呢,不会的话,看看下面的文章吧,小编已经为大家整理好了哦. 1.打开运行PDF编辑器,在编辑器中打 ...
- html页面工具-htmlUnit
HtmlUnit测试工具的推出,创意非常好.是一款给java开发用的browser.说它是browser,其实它是对html建模并且提供API来访问页面,点击链接等等的java类库. 这样的测 ...
- jekyll介绍安装.github静态页面工具
jekyll build # => 当前文件夹中的内容将会生成到 ./site 文件夹中. $ jekyll build --destination <destination> # ...
- 微软Connect教程系列--自动生成增删改查页面工具介绍(二)
本章课程描述了vs2015的三个特点,其中主要将描述在vs2015下面,使用命令自动生成增删改查界面,具体如下: 1.web.config文件不在存在,用config.json替代,以适应支撑vs的插 ...
- javascrpt 页面格式化页面
下面这个页面,格式化javaScript <html> <head> <title>JS格式化工具 </title> <meta http-equ ...
- ASP.NET 数据库页面访问简单工具
在工作中,有很多项目已上线后,很多项目的数据库服务器都不会对外开放的,外网想直接访问客户数据库服务器时,可能会出现困难. 这时就需要一个可以查询,更新数据库操作的页面了: 本来用sql语句直接操作数据 ...
- [转]以Facebook为案例剖析科技公司应有的工具文化
原文:http://36kr.com/p/146507.html 这是一篇几年前的文章,但对于没有涉及到工具文化这个概念的人来说,还是很新的. 前言 前段时间和大众点评的 CEO 张涛聊天的时候碰到内 ...
- ArcGIS空间分析工具
1. 3D分析 1.1. 3D Features toolset 工具 工具 描述 3D Features toolset (3D 要素工具集) Add Z Information 添加 Z 信息 添 ...
- 自定义tld标签,页面使用
背景需求: 系统本身的session不能在页面使用 如下: controller: @RequestMapping(method=RequestMethod.GET) public String ge ...
随机推荐
- [WP8] Binding时,依照DataType来选择DataTemplate
原文 [WP8] Binding时,依照DataType来选择DataTemplate 范例下载 范例程序代码:点此下载 问题情景 在开发WPF.WP8...这类应用程序的时候,透过Binding机制 ...
- HTML——使用表格对表单进行布局
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3Vuc2h1bWlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- ExtJs4 笔记(13) Ext.menu.Menu 菜单、Ext.draw.Component 绘图、Ext.resizer.Resizer 大小变更
本篇讲解菜单.绘图.还有大小变更控件.菜单控件可以附加到各种其他控件中,比如按钮.工具栏等,甚至可以直接通过通过右键打开(模拟右键菜单):ext对绘图的支持可以让我们通过js来绘图:大小变更控件可以让 ...
- Oracle SQL语句执行过程
前言 QQ群讨论的时候有人遇到这样的问题:where子句中无法访问Oracle自定义的字段别名.这篇 博客就是就这一问题做一个探讨,并发散下思维,谈谈SQL语句的执行顺序问题. 问题呈现 直接给出SQ ...
- Could not find or load main class
Then add '.' to your $CLASSPATH with CLASSPATH=.:$CLASSPATH or as a paramater with java -classpath . ...
- python 时间戳 datetime string 转换
import datetime import time **datetime转时间戳** In [1]: now = datetime.datetime.now() In [2]: time.mkti ...
- WinRarHelper帮助类
WinRarHelper帮助类 关于本文档的说明 本文档使用WinRAR方式来进行简单的压缩和解压动作,纯干货,实际项目这种压缩方式用的少一点,一般我会使用第三方的压缩dll来实现,就如同我上一个压缩 ...
- (四)SAX方式解析XML数据
SAX方式解析XML数据 文章来源:http://www.cnblogs.com/smyhvae/p/4044170.html 一.XML和Json数据的引入: 通常情况下,每个需要访问网络的应用程 ...
- [Android学习笔记]LinearLayout布局,剩余空间的使用
转自:http://segmentfault.com/q/1010000000095725 如果使得一个View占用其父View的剩余空间? 答案是使用:android:layout_weight = ...
- [置顶] 大量相关gis资源网盘打包下载
详细请下载附件 所有资源下载(网盘下载): http://laoheitan.bego.cc arcgis教程: http://www.bego.cc/file/23322579 ENVI教程: ht ...