jquery.dataTables学习

版本:DataTables-1.10.7

代码如下:

<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<title>jquery.dataTables学习</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="./resources/css/bootstrap.min.css">
<link rel="stylesheet" href="./resources/css/dataTables.bootstrap.css">
<script src="./resources/js/vendor/jquery-1.11.3.min.js"></script>
<script src="./resources/js/vendor/jquery.dataTables.js"></script>
<script src="./resources/js/vendor/dataTables.bootstrap.js"></script>
<script src="./resources/js/vendor/json2.js"></script>
<!-- bootstrap -->
<script src="./resources/js/bootstrap.min.js"></script>
<style type="text/css">
</style>
<script type="text/javascript" charset="utf-8">
	$(document).ready(function() {
		
		$.extend($.fn.dataTable.defaults, {
			searching : false,
			ordering : false,
			pagingType: "simple_numbers"
		});

		var oTable = $('#table_id').DataTable({
			//"dom": 'til<p>',
			"paging" : true,
			"searchable":false,
			processing : true,
			serverSide : true,
			language : {
				"search":"检索",
				emptyTable : "没有数据",
				"scrollX":"100%",
				loadingRecords : "加载中...",
				processing : "查询中...",
				lengthMenu : "每页 _MENU_ 条",
				zeroRecords : "没有数据",
				info : "第 _PAGE_ 页  / 共 _PAGES_ 页",
				infoEmpty : "没有数据",
				infoFiltered : "(过滤总件数 _MAX_ 条)"
			},
			columns : [ {
				"data" : "checkbox","class": "center","defaultContent":" "
			},{
				"data" : "id","class": "center"
			}, {
				"data" : "name","class": "center"
			}, {
				"data" : "price","class": "center"
			}, {
				"data" : "quantity","class": "center"
			}, {
				"data" : "status","class": "center"
			} ],
			columnDefs : [{
				targets: [6],
				render:function(data,type,full){
					var s = "";
					s += '<td class="center"><a class="btn btn-success" href="#">';
					s += '<i class="glyphicon glyphicon-zoom-in icon-white"></i>';
					s += ' View</a>';
					s += ' </td>';
					return s;
				}
				
			}],
			ajax : {
				url : "/get_goods_list_page",
				type : "POST",
				contentType : "application/json",
				dataType : "json",
				data : function(d) {
					//console.log(JSON.stringify(d));
					var p = {};
					p.pageSize = d.length;
					p.pageNo = d.start/d.length + 1;
					p.draw = d.draw;
					p.name = $("#goodsName").val();
					
					var jsonParam = JSON.stringify(p);
					console.log(jsonParam);
					return jsonParam;
				},
				"error":function(data){
					alert(data);
				}
				
			},
			rowCallback:function(row, data, displayIndex, displayIndexFull ){
				if(data.status ==1){
					 $('td:eq(5)', row).html("未审核");
				}else if(data.status ==2){
					 $('td:eq(5)', row).html("已审核");
				}
				$('td:eq(0)',row).html('<input type="checkbox" name="checkbox" value="' + data.id + '">');
				return row;
			}

		});
		
		$("#btn_query").click(function(){
			oTable.draw();
			
		});
		

	});
</script>
</head>
<body>
<div class="container">
	<br>
	<div class="row">
		<div class="col-md-12">
			<form class="form-inline">
				<div class="form-group">
					<label for="">商品名称:</label> <input type="text" class="form-control"
						id="goodsName" name="goodsName">
				</div>
				<div class="form-group">
					<button type="button" id="btn_query" class="btn btn-default">查询</button>
				</div>
			</form>
		</div>
	</div>
		
	<br>
	<div class="row">
		<div class="col-md-12">
			<table id="table_id" class="table table-striped table-bordered bootstrap-datatable datatable responsive">
				<thead>
					<tr>
						<th></th>
						<th>ID</th>
						<th>商品名称</th>
						<th>单价</th>
						<th>数量</th>
						<th>状态</th>
						<th>操作</th>
					</tr>
				</thead>
			</table>
		</div>
	</div>
</div>
</body>
</html>

效果图:

jquery.dataTables学习_第1张图片


请求参数格式:

{"pageSize":2,"pageNo":1,"draw":1}


响应参数格式:

{
	"status": "0",
	"draw": 1,
	"recordsTotal": 14,
	"recordsFiltered": 14,
	"data": [{
		"id": 35,
		"name": "44",
		"description": "44",
		"price": 44.000,
		"quantity": 44,
		"status": 1
	},
	{
		"id": 34,
		"name": "234",
		"description": "345435",
		"price": 35345.000,
		"quantity": 34535,
		"status": 1
	}]
}



你可能感兴趣的:(jquery.dataTables学习)