扩展Jquery方法创建LigerUI Grid
///**
//*封装jquery get请求ajax
//*author:叶明龙
//*time:2012-12-10
//*/
function getAjax(url, para, fn) {
if (typeof fn == "function") {
if (para == undefined) {
para = {};
}
$.get(url, para, function (data) {
var obj = eval("(" + data + ")");
fn.call(this, obj);
})
}
} /**
*扩展Jquery方法创建LigerUI Grid
*============================================
*author:叶明龙
*time:2014/06/21
*
*
*============================================
*/
; (function ($) {
$.fn.extend({
createLigerGrid: function (opt) {
var _t = $(this);
var options = $.extend(true, {
header: [],
title: "",
param: {},
ajaxURL: "",
ajaxMethod: "get",
pageSize: 20,
keyID: "",//主键
editor: {
url: "",
para: [],
width: 600,
height: 600
},
success: function () { }
}, opt);
options.header.unshift({
name: 'id', display: '操作', width: 100, isAllowHide: false,
render: function (record, rowindex, value, column) {
//this 这里指向grid
//record 行数据
//rowindex 行索引
//value 当前的值,对应record[column.name]
//column 列信息record[options.editor.para[0]]
var _deleConfirm = "$.ligerDialog.confirm('确定删除?', function (yes) {";
_deleConfirm += " if (yes) {";
_deleConfirm += " getAjax('" + options.ajaxURL + "?type=delete&" + "id=" + record[options.editor.para[0]] + "',";
_deleConfirm += "{";
var _f = false;
for (var pn in options.param) {
if (_f)
_deleConfirm += ",";
_deleConfirm += "'" + pn + "':'" + options.param[pn] + "'";
_f = true;
}
_deleConfirm += "}";
_deleConfirm += ",function(data){";
_deleConfirm += "if(data.success)$.ligerDialog.success('删除成功');else $.ligerDialog.error('删除失败');";
_deleConfirm += "})";
_deleConfirm += " }";
_deleConfirm += " });";
//onclick='eval(" + _deleConfirm + ");'
return "<a href='javascript:;' onclick=\"" + _deleConfirm + "\">删除</a> <a href='javascript:;' onclick='$.ligerDialog.open({ title:\"修 改 " + record[options.editor.para[0]] + "\",width: " + options.editor.width + ", height: " + options.editor.height + ",url: \"" + options.editor.url + "?type=add\" });'>修改</a>";
}
});
if (options.ajaxURL == "") {
$.ligerDialog.warn("未填写请求ajaxURL,无法响应服务器请求数据响应");
return false;
} var Grid = $(_t).ligerGrid({
title: options.title,
columns: options.header,
pageSize: options.pageSize,
method: options.ajaxMethod,
url: options.ajaxURL,
checkbox: true,
toolbarShowInLeft: true,
toolbar: {
items: [{
text: '添 加', click: function () {
$.ligerDialog.open({ width: options.editor.width, height: options.editor.height, title: "添 加", url: options.editor.url + "?type=add" });
}, icon: 'add'
},
{
text: '删 除', click: function () {
$.ligerDialog.confirm('确定删除?', function (yes) {
if (yes) {
var _Rows = Grid.getSelectedRows(), _keys = []
for (var i = 0; i < _Rows.length; i++) {
_keys.push(_Rows[i][options.editor.para[0]]);
}
getAjax(options.ajaxURL + "?type=delete&id=" + _keys.join(','), options.param, function (data) {
if (data.success)
$.ligerDialog.success('删除成功');
else
$.ligerDialog.error('删除失败');
});
}
});
}, icon: 'delete'
}
]
},
root: "data",
record: "total",
width: '100%',
height: '100%',
heightDiff: -10,
usePager: true,
enabledSort: false,
parms: options.param,
pageSizeOptions: [5, 10, 15, 20],
onCheckRow: function (checked, data, rowid, rowdata) { },
onLoaded: function (grid) {
grid.toggleLoading(false);
if (options.success)
options.success($(_t).data("request_data"), grid);
},
onSuccess: function (data, grid) {
$(_t).data("request_data", data);
},
onError: function (XMLHttpRequest, textStatus, errorThrown) {
$.ligerDialog.warn("数据加载错误");
}
});
return Grid;
}
});
})(jQuery);
页面调用示例
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link rel="Stylesheet" type="text/css" href="/Content/css/Custom.css" />
<link rel="stylesheet" type="text/css" href="/Content/js/LigerUI/skins/Aqua/css/ligerui-all.css" />
<link rel="stylesheet" type="text/css" href="Content/js/LigerUI/skins/Gray/css/all.css" />
<link rel="stylesheet" type="text/css" href="Content/js/LigerUI/skins/ligerui-icons.css" />
<link href="/Content/css/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="/Content/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="/Content/js/LigerUI/ligerui.all.js"></script>
<script type="text/javascript" src="/Content/js/js2014.js"></script>
<script src="/Content/js/jquery.cookie.js" type="text/javascript"></script>
<script src="Content/js/JSON2.JS"></script>
<script type="text/javascript" src="/Content/js/PUBLIC.JS"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#Grid").createLigerGrid({
header: [{ display: '农作物名称', name: 'Goods_Name',isAllowHide:true },
{ display: '种植面积(亩)', name: 'Areas' }],
param: {'flag':1},
editor: {
url: "",
para: ["Goods_Name"]
},
ajaxURL: "/Pages/Hander/Highcharts.ashx"
});
});
</script>
</head>
<body>
<div id="Grid"></div>
</body>
</html>
$(document).ready(function () {
$("#Grid").createLigerGrid({
header: [{ display: '农作物名称', name: 'Goods_Name',isAllowHide:true },
{ display: '种植面积(亩)', name: 'Areas' }],
param: {},
editor: {
url: "",
para: ["Goods_Name"]
},
ajaxURL: "/Pages/Hander/Highcharts.ashx"
});
});
扩展Jquery方法创建LigerUI Grid的更多相关文章
- jquery 扩展插件方法
分析插件jquery.countdown.js (function($) { $.fn.countdown = function(options) { // default options var d ...
- 扩展JQuery和JS的方法
//JS的扩展方法: 1 定义类静态方法扩展 2 定义类对象方法扩展 var aClass = function(){} //1 定义这个类的静态方法 aC ...
- 封装jQuery Validate扩展验证方法
一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...
- JQuery方法扩展
第一种 extend <!-- extend 扩展jQuery,其实就是增加一个静态方法 --> 定义: $.extend({ sayHello:function(name) { aler ...
- jquery validate扩展验证方法
/***************************************************************** jQuery Validate扩展验证方法 (linjq) *** ...
- [ligerUI] grid封装调用方法
/** * 获取页面参数 */ function getPageSize(){ var xScroll, yScroll; if (window.innerHeight && wind ...
- jQuery Validate扩展验证方法 (zhangxiaobin)
/***************************************************************** jQuery Validate扩展验证方法 (zhangxiaob ...
- 扩展ToolBarManager、ListView和Grid控件以实现气球式的ToolTip
原文:扩展ToolBarManager.ListView和Grid控件以实现气球式的ToolTip infragistics是全球领先的UI工具和用户体验的专家,Infragistics开发了一系列的 ...
- 扩展jquery easyui datagrid编辑单元格
扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...
随机推荐
- CF 某套题 O :Grid (简单BFS)
题意: 从左上角跳到右下角最少需要多少步,跳的规则为:可以向四个方向的任意一个方向跳当前格子中的步数,若跳不到右下角输出IMPOSSIBLE. 题解: BFS搜索,注意判断边界,标记. 代码: #in ...
- Python:使用正则去除HTML标签(转)
利用正则式处理,不知道会不会有性能问题,没有经过太多测试. 目前我有很多还是使用BeautifulSoup进行这种处理. HTML实体处理的只是用于处理一些常用的实体. # -*- coding: u ...
- JZYZOJ1379天才的约数和 数论 约数和
http://172.20.6.3/Problem_Show.asp?id=1379 易得n=a*b2/b1: 需要注意算出n之后要判断n的约数和是否等于a,这里需要用约数和定理递归,递归前求一下 ...
- 【DFS】奇怪的电梯
奇怪的电梯 题目描述 有一天桐桐做了一个梦,梦见了一种很奇怪的电梯.大楼的每一层楼都可以停电梯,而且第i层楼(1≤i≤N)上有一个数字K:(0≤Ki≤N).电梯只有四 个按钮:开,关,上,下.上下的层 ...
- 【分块】【树套树】bzoj2141 排队
考虑暴力更新的情况,设swap的是L,R位置的数.swap之后的逆序对数应该等于:之前的逆序对数+[L+1,R-1]中比 L位置的数 大的数的个数-[L+1,R-1]中比 L位置的数 小的数的个数-[ ...
- 用Java Swing实现Freecell(空当接龙)
目录 引言 1 游戏规则 2 界面设计和大致逻辑 2.1 界面设计 2.2 大致逻辑 3 主要功能模块设计与实现 3.1 主要思路 3.2 主要工具类 3.3 异常类 3.4 游戏初始化模块 3.5 ...
- React事件系统入门
React基于虚拟DOM实现了一个合成事件层,我们所定义的事件处理器会接受到一个合成事件层对象的实例,它完全符合W3C标准,不会存在任何IE标准的兼容性问题.并且和原生的浏览器事件一样拥有同样的接口, ...
- [转][Navicat for MySQL系列]Navicat如何使用(二)
上一篇经验已经建立了数据连接,这篇我介绍一下Navicat for MySQL的“增删改查”功能是如何操作的. 工具/原料 Navicat for MySQL 10.1.7 数据库操作(基本) 1 远 ...
- CDOJ 1279 班委选举 每周一题 div2 暴力
班委选举 题目连接: http://acm.uestc.edu.cn/#/status/list?problemId=1279 Description 高考的脚步越来越近了--时间如山涧小溪一般悄无声 ...
- ubuntu中使用apt-get install 安装的软件的一些目录所在地
apt-get 所下载的用于安装的软件包,在 /var/cache/apt/archives中.如果执行过 apt-get clean ,那么原始下载的包就找不到了. 1.下载的软件存放位置/var/ ...