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. 【数据库】一篇文章搞掂:Oracle数据库

    PL/SQL的使用 1.安装使用 1.1.安装暂略 1.2.使用 添加环境变量 打开PL/SQL,不要登录,进入界面后,打开设置Preference 设置主目录和OCI库

  2. POJ 1066 Treasure Hunt [想法题]

    题目链接: http://poj.org/problem?id=1066 --------------------------------------------------------------- ...

  3. MySql 5.7.20 绿色版安装

    MySql 5.7.20 绿色版安装 一.MySql 安装 1.从官网下载绿色压缩包. 2.解压安装文件到指定目录 3.创建配置文件 my.ini 到解压文件的根目录,my.ini 配置文件如下,需将 ...

  4. Jmeter 循环控制器 遍历结果

    1.测试计划,添加Mysql jar包 2.线程组 3.JDBC Connection Configuration,配置Mysql 4.添加JDBC Request,将查询出的数据对应的存入usern ...

  5. 精讲 org.w3c.dom(java dom)解析XML文档

    org.w3c.dom(java dom)解析XML文档 位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效果可能会 ...

  6. hdu2182Frog(动态规划)

    Problem Description A little frog named Fog is on his way home. The path's length is N (1 <= N &l ...

  7. Node.js实战6:定时器,使用timer延迟执行。

    setTimeout 在nodejs中,通过setTimeout函数可以达到延迟执行的效果,这个函数也常被称为定时器. 一个简单的例子: console.log( (new Date()).getSe ...

  8. 将IDEA工程代码提交到Github

    1.git安装配置 1.下载git https://git-scm.com/download/win 2.安装 傻瓜式安装即可,记住安装的目录 3.配置 2.配置git SSH 1.首先申请一个Git ...

  9. 索引及explain

    索引好比书的目录.通过索引能快速的定位到一条数据. 在MySQL中除了B+树索引之外,还有一些其他的索引类型.比如:全文索引.(DB和DD索引叫R树索引).在MySQL cluster中是P树索引,m ...

  10. dp(最长公共上升子序列)

    This is a problem from ZOJ 2432.To make it easyer,you just need output the length of the subsequence ...