嗨,我有一个用JQuery创建的数据表,如图所示。
<html>
<head>
<link rel="stylesheet" href="ui/jquery-ui.min.css">
<script src="ui/external/jquery/jquery.js"></script>
<script src="ui/jquery-ui.min.js"></script>
<script src="DataTables-1.10.7/media/js/jquery.js"></script>
<script src="DataTables-1.10.7/media/js/jquery.dataTables.js"></script>
</head>
<body>
<script>
$(document).ready(function() {
var table = $('#example').dataTable( {
scrollY: 300,
paging: false
});
var settings = table.fnSettings();
console.log(settings)
});
</script>
</body>
</html>
我试图修改属性滚动有一个不同的值,如400。我想在初始化之后这样做。但是,变量settings
显然是空的。
您正在返回NULL
值的原因是因为jQuery数据表找不到您的表。
您需要根据要显示的数据相应地在javascript上面定义页面上的表HTML。需要遵循以下格式(包括<thead>
和<tbody>
标签):
<table id="example">
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
<script>
$(document).ready(function() {
var table = $('#example').dataTable( {
scrollY: 300,
paging: false
});
var settings = table.fnSettings();
alert(settings)
});
</script>
演示:http://jsfiddle.net/wynrj8vh/
另外,根据文档,您需要向ScrollY传递一个字符串值:
$('#example').dataTable( {
"scrollY": "200px"
} );
是的,您需要在HTML中定义您的表:
<table id="example">
然后:
var table = $('#example').dataTable();
oSettings = table.fnSettings();
if(oSettings != null) {
table.fnDraw();
}//if