vaeThink2/public/static/admin_static/lib/jquery.bsgrid/examples/grid/extend.html

73 lines
3.3 KiB
HTML
Raw Normal View History

2020-04-01 11:45:12 +08:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Grid Extend</title>
<!-- grid.all.min.css, grid.all.min.js -->
<link rel="stylesheet" href="../../builds/merged/bsgrid.all.min.css"/>
<script type="text/javascript" src="../../plugins/jquery-1.4.4.min.js"></script>
<script type="text/javascript" src="../../builds/js/lang/grid.zh-CN.min.js"></script>
<script type="text/javascript" src="../../builds/merged/bsgrid.all.min.js"></script>
</head>
<body style="background-color: #fff;">
<table id="searchTable">
<tr>
<th w_index="ID" width="3%;">ID</th>
<th w_index="XH" width="5%;">XH</th>
<th w_index="ID" width="5%;">ID</th>
<th w_index="CHAR" w_align="left" width="15%;">CHAR</th>
<th w_index="TEXT" w_align="left" width="27%;">TEXT</th>
<th w_index="DATE" width="15%;">DATE</th>
<th w_index="TIME" width="15%;">TIME</th>
<th w_index="NUM" width="5%;">NUM</th>
<th w_render="operate" width="10%;">Operate</th>
</tr>
</table>
<script type="text/javascript">
//extend init grid methods
$.bsgrid.forcePushPropertyInObject($.fn.bsgrid.defaults.extend.initGridMethods, 'extend_init', function(gridId, options){
console.log('extend init method.');
});
// extend before render grid methods
$.bsgrid.forcePushPropertyInObject($.fn.bsgrid.defaults.extend.beforeRenderGridMethods, 'extend_before_render_grid', function(parseSuccess, gridData, options){
console.log('extend before render grid method.');
});
// extend render per column methods, no matter blank column or not blank column
$.bsgrid.forcePushPropertyInObject($.fn.bsgrid.defaults.extend.renderPerColumnMethods, 'extend_render_per_column', function(record, rowIndex, colIndex, tdObj, trObj, options){
var val = gridObj.getRecordIndexValue(record, gridObj.getColumnModel(colIndex).index);
if(val.length > 30){
tdObj.css('background-color', 'blue');
}else if(val.length < 5 && !isNaN(parseInt(val)) && parseInt(val) < 95){
tdObj.css('background-color', 'green');
}
console.log('extend render per column method.');
});
// extend render per row methods, no matter blank row or not blank row, after render per column methods
$.bsgrid.forcePushPropertyInObject($.fn.bsgrid.defaults.extend.renderPerRowMethods, 'extend_render_per_row', function(record, rowIndex, trObj, options){
if(rowIndex % 2 == 0){
trObj.find('td').css('background-color', 'pink');
}
console.log('extend render per row.');
});
// extend after render grid methods
$.bsgrid.forcePushPropertyInObject($.fn.bsgrid.defaults.extend.afterRenderGridMethods, 'extend_after_render_grid', function(parseSuccess, gridData, options){
console.log('extend after render grid method.');
});
var gridObj;
$(function () {
gridObj = $.fn.bsgrid.init('searchTable', {
//autoLoad: false,
url: 'data/json.jsp',
pageSizeSelect: true,
pageSize: 10
});
});
function operate(record, rowIndex, colIndex, options) {
return '<a href="#" onclick="alert(\'ID=' + gridObj.getRecordIndexValue(record, 'ID') + '\');">Operate</a>';
}
</script>
</body>
</html>