var EcommerceOrders = function() {

     var initPickers = function() {
//init date pickers
$('.date-picker').datepicker({
rtl: App.isRTL(),
autoclose: true
});
} var handleOrders = function() { var grid = new Datatable();
grid.init({
src: $("#datatable_orders"),
onSuccess: function(grid) {
// execute some code after table records loaded
},
onError: function(grid) {
// execute some code on network or other general error
},
dataTable: {// here you can define a typical datatable settings from http://datatables.net/usage/options
//"sDom": '<"top"i>rt<"bottom"flp><"clear">', //显示布局
"aLengthMenu": [
[20, 50, 100, 150, -1],
[20, 50, 100, 150, "All"] //["每页10条", "每页25条", "每页50条", "显示所有数据", "不显示数据"]],//设置每页显示记录的下拉菜单
],
"iDisplayLength": 2, // default record count per page
// "iCookieDuration":7200, //指定用于存储客户端信息到cookie中的时间长度,超过这个时间后,自动过期
"bProcessing": true,
"bServerSide": true, //是否启动服务器端数据导入,即要和sAjaxSource结合使用
//"bLengthChange":false,//改变每页显示数据数量
//"bPaginate": false, //翻页功能
"bFilter":true, //全文过滤开关,过滤功能
//"bSort": false, //排序功能
//"bInfo": false //页脚信息
//"bAutoWidth": true, //自动宽度
//"bStateSave": true, //保存当前页面信息为cookie,默认关闭
//"bScrollCollapse": false, ////当显示的数据不足以支撑表格的默认的高度时,依然显示纵向的滚动条。(默认是false)
// "bJQueryUI": true, /*是否开启主题*/ "sAjaxSource": "test/dataProvider", // ajax source
// "sPaginationType": "full_numbers", //修改默认分页显示样式
// "sScrollX": "100%",//表格的宽度
// "sScrollXInner": "100%", //表格的内容宽度
// "sScrollY": "200px",
// "sUrl": "media/language/de_DE.txt" ,//也可以直接指定语言包,文件格式和上面一样
//"sServerMethod": "GET", //传递方式
"oLanguage": {
"sLengthMenu": "每页显示 _MENU_条",
"sZeroRecords": "没有找到符合条件的数据",
"sProcessing": "&lt;img src=’./loading.gif’ /&gt;",
"sInfo": "当前第 _START_ - _END_ 条 共计 _TOTAL_ 条",
"sInfoEmpty": "木有记录",
"sInfoFiltered": "(从 _MAX_ 条记录中过滤)",
"sSearch": "搜索:",
"oPaginate": {
"sFirst": "首页",
"sPrevious": "前一页",
"sNext": "后一页",
"sLast": "尾页"
}
},
// "oSearch":{"sSearch":"keyword1 keyword2 keyword3","bRegex":true},
// "asStripClasses": ['odd', 'even'], //指定要被应用到各行的class风格,会自动循环
"aaSorting": [[1, "asc"]] ,// //给列表排序 ,第一个参数表示数组 (由0开始)。1 表示Browser列。第二个参数为 desc或是asc
// "aoColumnDefs": [
// {"bSearchable": false, "bSort": false,"bVisible": true, "aTargets": [1]}, //bSearchable:是否可搜索;bVisible:是否可见;aTargets:哪一列
// {"bVisible": true, "aTargets": [2]}//
// ],
"aoColumnDefs": [{
"sClass": "center",
"aTargets": ['_all']
}, {
"bSearchable": false,
"aTargets": [0, 1,2]//['_all']
}, {
"bSortable": false, //指定不支持排序的列
"aTargets": ['_all']//['_all']
}, {
"sWidth": "5%", //指定列宽
"aTargets": [0, 1]//['_all']
}], // "aoSearchCols": [
// null,
// {"sSearch": "keyword", "bRegex": true},
// null,
// {"sSearch": "keyword2", "bRegex": false}
// ], // "aoColumns": [
// {"sClass": "center", "sName": "Id"},
// {"sClass": "center", "sName": "Title1"},
// {"sClass": "center", "sName": "CategoryId"},
// {"sClass": "center", "sName": "Click"}
// ],
}
}); // handle group actionsubmit button click
grid.getTableWrapper().on('click', '.table-group-action-submit', function(e) {
e.preventDefault();
var action = $(".table-group-action-input", grid.getTableWrapper());
if (action.val() != "" && grid.getSelectedRowsCount() > 0) {
grid.addAjaxParam("sAction", "group_action");
grid.addAjaxParam("sGroupActionName", action.val());
var records = grid.getSelectedRows();
for (var i in records) {
grid.addAjaxParam(records[i]["name"], records[i]["value"]);
}
grid.getDataTable().fnDraw();
grid.clearAjaxParams();
} else if (action.val() == "") {
App.alert({type: 'danger', icon: 'warning', message: 'Please select an action', container: grid.getTableWrapper(), place: 'prepend'});
} else if (grid.getSelectedRowsCount() === 0) {
App.alert({type: 'danger', icon: 'warning', message: 'No record selected', container: grid.getTableWrapper(), place: 'prepend'});
}
}); //用于每一列搜索过滤
// var asInitVals = new Array();
// $(".filter input").keyup(function() {
// grid.fnFilter(this.value, $(".filter input").index(this));
// });
// $(".filter input").each(function(i) {
// asInitVals[i] = this.value;
// });
// $(".filter input").focus(function() {
// if (this.className == "search_init")
// {
// this.className = "";
// this.value = "";
// }
// });
// $(".filter input").blur(function(i) {
// if (this.value == "")
// {
// this.className = "search_init";
// this.value = asInitVals[$(".filter input").index(this)];
// }
// }); } return {
//main function to initiate the module
init: function() { initPickers();
handleOrders();
} }; }();
 <div class="portlet-body">
<div class="table-container">
<table class="table table-striped table-bordered table-hover" id="datatable_orders">
<thead>
<tr role="row" class="heading">
<th >
<input type="checkbox" class="group-checkable">
</th>
<th width="5%">
Order&nbsp;#
</th>
<th width="15%">
Purchased&nbsp;On
</th>
<th width="10%">
Actions
</th>
</tr>
<tr role="row" class="filter">
<td>
</td>
<td>
<input type="text" class="form-control form-filter input-sm" name="order_id" class="search_init" >
</td>
<td>
<input type="text" class="form-control form-filter input-sm" name="order" >
</td>
<td>
<div class="margin-bottom-5">
<button class="btn btn-sm yellow filter-submit margin-bottom"><i class="fa fa-search"></i> Search</button>
</div>
<button class="btn btn-sm red filter-cancel"><i class="fa fa-times"></i> Reset</button>
</td>
</tr>
</thead>
<tbody>
</tbody>
<tfoot>
</tfoot>
</table>
</div>
</div>
     public function actionDataProvider() {
$data = array();
$connect = Post::model()->getDbConnection()->createCommand();
$limit = isset($_REQUEST['iDisplayLength']) ? $_REQUEST['iDisplayLength']:2;
$offset = isset($_REQUEST['iDisplayStart']) ? $_REQUEST['iDisplayStart']:0;
$list = $connect->select('*')->from( Post::model()->tableName())->limit($limit, $offset)->queryAll();
$count = 5;
foreach ($list as $key => $val) {
$row = array();
$row[0] = "<input type=\"checkbox\" name=\"id[]\" value=\"1\">";
$row[1] = $val['title'];
$row[2] = $val['content'];
$row[3] = "<a href=\"ecommerce_orders_view.html\" class=\"btn btn-xs default btn-editable\"><i class=\"fa fa-search\"><\/i> View<\/a>";
$data[] = $row;
}
$json = new stdClass();
$json->aaData = $data;
$json->sEcho = $_REQUEST['sEcho'];
$json->iTotalRecords = $count;
$json->iTotalDisplayRecords = $count;
die(json_encode($json));
}

Jquery datatable 配置与应用的更多相关文章

  1. JQuery Datatable用法

    原文出处:http://sgyyz.blog.51cto.com/5069360/1408251 目标: 使用jQuery Datatable构造数据列表,并且增加或者隐藏相应的列,已达到数据显示要求 ...

  2. jQuery Datatable 转载

    jQuery Datatable 实用简单实例 时间 2014-05-08 10:44:18  51CTO推荐博文 原文  http://sgyyz.blog.51cto.com/5069360/14 ...

  3. 使用jquery.datatable.js注意事项

    本文链接:https://blog.csdn.net/ylg01/article/details/76463908写在最前面的话,如果不是维护老项目或者在老项目上二次开发尽量不要用这个表格插件 为什么 ...

  4. jquery datatable使用简单示例

    目标: 使用 jQuery Datatable 构造数据列表,并且增加或者隐藏相应的列,已达到数据显示要求.同时, jQuery Datatable 强大的功能支持:排序,分页,搜索等. Query ...

  5. jquery dataTable汉化(插件形式)

    1.jquery dataTable.js 官网:http://datatables.net/ 中文:http://dt.thxopen.com/ 2.汉化提示信息(放到xx.js中,引入即可) 注: ...

  6. JQuery Datatable Ajax请求两次问题的解决

    最近一个项目中使用JQuery Datatable,用起来比较方便,但在测试过程中,发现当条件改变时,有时查询结果中的数据不正确. 使用FireBug跟踪时,发现在使用Ajax请求时,点击一次搜索按钮 ...

  7. 分享在MVC3.0中使用jQuery DataTable 插件

    前不久在网络上看见一个很不错的jQuery的DataTable表格插件.后来发现在MVC中使用该插件的文章并不多.本文将介绍在MVC3.0如何使用该插件.在介绍该插件之前先简单介绍一下,推荐该插件的原 ...

  8. jQuery DataTable 删除数据后重新加载

    问题描述: 利用jQuery Datatable和artTemplate组合来做的表格.但是当删除数据时,需要重新加载table里的数据.但是问题是datatable并没有直接的重新渲染,反而给数据累 ...

  9. JQuery DataTable的配置项及事件

    当我们需要在加载或者显示表格的时候,改变jquery datatable 的数据,或增加一些html标签处理. 可以通过Jquery DataTable的回调函数处理. 实例代码: if (oTabl ...

随机推荐

  1. CSS中属性百分比的基准点

    1.属性百分比的基准点 1.1.基于包含块 以下的关于包含块(含块)的概念,不能简单地理解成是父元素. 如果是静态定位和相对定位,包含块一般就是其父元素.但是对于绝对定位的元素,包含块应该是离它最近的 ...

  2. Integrating .NET Code and SQL Server Reporting Services

    SQL Server Reporting Services versions 2000 and 2005 (SSRS) has many powerful features. SSRS has a w ...

  3. [CSP-S模拟测试]:Median(暴力+模拟)

    题目描述 定义两个数列: $$S=\{S(1),S(2),...,S(n)\}\text{和}S_2\{S_2(1),S_2(2),...,S_2(n)\}$$ $$S(k)=(p_k\times k ...

  4. PB TB级数据

    Byte.KB.MB.GB.TB.PB.EB.ZB.YB. 1KB=1000B1MB=1000KB1GB=1000MB1TB=1000GB 1TB=240B=1024MB 1PB=250B k M G ...

  5. css选择器的组合示例

     案例一demo <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  6. php面试专题---13、AJAX基础内容考点

    php面试专题---13.AJAX基础内容考点 一.总结 一句话总结: ajax对提升用户速度,缓解服务器压力方面也是很有可取之处的,毕竟传递的数据少了 1.AJAX基础概念? Asynchronou ...

  7. SQL SERVER 2012文件表(FILETABLE)新体验之一

    SQLSERVER 2012 文件表功能很COOL,让我们体验一下吧. 1,创建数据库 [sql] DREATE DATABASE FileTableTest ON  PRIMARY (     NA ...

  8. Django 的工作流程和基本内容

    1.一个基本的Django请求流程 我们先开始写一个基本的请求.这个请求的获取和处理,是使用 urls.py 和 views.py 处理的.我们使用命令 python manage.py runser ...

  9. DJango安装-windows

    1.进入虚拟环境后启动 activate 2.查看当前虚拟环境是否存在Django环境 pip list 3.不存在则 安装Django环境 pip install django 4.查看Django ...

  10. Node.js实战4:标准IO及console对像。

    IO即输入输出. console用于Nodejs程序信息输出. Nodejs的IO操作,通过process.stdout.process.stdin来操作. 下面的例子,将简单展示这两个函数的用法.程 ...