1、本文主要是实现datagrid,分页采取的jQuery.pagination.js,首先我们需要引入jQuery与jQuery.pagination.js,然后实现datagrid,代码如下:
/*
* 扩展jQuery方法:
* @author doubleicon
* @url http://blog.csdn.net/u011872945
* @name datagrid.js
* @since 2014/6/17
*/
(function ($) {
$.fn.datagrid = function (data, parameter) {
var _columnCount = 0;
var _iconWidth = 32;
var _iconHeight = 32;
var field_array = new Array();
var title_array = new Array();
var width_array = new Array();
var align_array = new Array();
var toolbar_width = 0;
for (var i = 0; i < parameter.columns.length; i++) {
_columnCount++;
field_array[i] = parameter.columns[i].field;
title_array[i] = parameter.columns[i].title || "";
width_array[i] = parameter.columns[i].width || 100;
align_array[i] = parameter.columns[i].align || "left";
}
var sbBuilder = new Array();
for (var i = 0; i < parameter.toolbar.length; i++) {
var width = parameter.toolbar[i].width || 100;
toolbar_width += width;
}
sbBuilder = sbBuilder.concat("<table> ");
sbBuilder = sbBuilder.concat("<tr>");
if (parameter.toolbar.length > 0) {
sbBuilder = sbBuilder.concat("<td style='width:" + toolbar_width + "px;background: linear-gradient(to bottom, #f9f9f9 0px, #efefef 100%) repeat-x scroll 0 0 rgba(0, 0, 0, 0);'></td>");
}
for (var i = 0; i < _columnCount; i++) {
sbBuilder = sbBuilder.concat("<td style='width:" + width_array[i] + "px;background: linear-gradient(to bottom, #f9f9f9 0px, #efefef 100%) repeat-x scroll 0 0 rgba(0, 0, 0, 0);' align='" + align_array[i] + "'>");
sbBuilder = sbBuilder.concat(title_array[i]);
sbBuilder = sbBuilder.concat("</td>");
}
sbBuilder = sbBuilder.concat("</tr>");
for (var i = 0; i < data.length; i++) {
sbBuilder = sbBuilder.concat("<tr>");
if (parameter.toolbar.length > 0) {
sbBuilder = sbBuilder.concat("<td style='width: