我正在使用datatables jquery插件,并希望按日期排序.
我知道他们有一个插件,但我找不到从哪里下载它
http://datatables.net/plug-ins/sorting
我相信我需要这个文件:dataTables.numericComma.js但我无法在任何地方找到它,当我下载数据表时,它似乎不在zip文件中.
我也不确定是否需要将自己的自定义日期排序器传递给此插件.
我试图对这种格式进行排序MM/DD/YYYY HH:MM TT(AM | PM)
谢谢
编辑
如何更改此项以按MM/DD/YYYY HH:MM TT(AM | PM)排序并将其更改为美国日期?
jQuery.fn.dataTableExt.oSort['uk_date-asc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
};
jQuery.fn.dataTableExt.oSort['uk_date-desc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = …
Run Code Online (Sandbox Code Playgroud) 我已经在stackoverflow中检查了有关此主题的几个问题,但它们都使用旧的dataTable.我正在使用DataTable.我通过NOT USING服务器端填充了我的DataTable,因此预加载数据(JSON)如下:
datatable = $("#datatable").DataTable({
data : myData,
moreoptions : moreoptions
});
Run Code Online (Sandbox Code Playgroud)
我没有遇到任何问题,DataTable加载得很好.现在我想myData
用我上传的新数据重新填充它.如何重新加载DataTable以反映更改?
这是我到目前为止所尝试的:
$('#upload-new-data').on('click', function () {
myData = NewlyCreatedData; // I console logged this NewlyCreatedData, and it has my uploaded data.
datatable.draw(); // Redraw the DataTable
});
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我也试过这个:
datatable = $("#datatable").DataTable({
"data" : myData,
"drawCallback" : function () {
myData = NewlyCreatedData;
},
"moreoptions" : moreoptions,
});
Run Code Online (Sandbox Code Playgroud)
然后在上传时我只需调用重绘触发器:
$('#upload-new-data').on('click', function () {
datatable.draw(); // Redraw the DataTable
});
Run Code Online (Sandbox Code Playgroud)
这仍然不起作用.
当我点击显示我的表的更多图像时,我的firebug控制台中出现错误:
TypeError: oTable.row is not a function
var row = oTable.row(tr);
Run Code Online (Sandbox Code Playgroud)
这里也是一个拨弄我的代码生成此错误.
据我所知,row()
找不到我的数据表的功能.但我不明白......我使用最新的数据表版本与jquery版本1.11.1(而不是1.11.0,如小提琴中所示),这也是在示例中使用的(在datatables网站上).
我被卡住了...任何人都知道我为什么会收到这个错误?
非常感谢
我是DataTables的新手.我想在每一行添加按钮进行编辑和删除(如下图所示)
我试过代码:
Test.cfm
<table id="myDataTable" class="table table-striped table-bordered">
<thead>
<tr>
<th>UserID</th>
<th>Name</th>
<th>UserName</th>
<th>Passowrd</th>
<th>Email</th>
<th>IsActive</th>
<th>Command</th>
</tr>
</thead>
<tbody>
</tbody>
Run Code Online (Sandbox Code Playgroud)
$(document).ready(function () {
var oTable = $('#myDataTable').dataTable({
// "bServerSide": true,
"sAjaxSource": "fetchUserData.cfm",
"bProcessing": true,
"sPaginationType": "full_numbers",
"aoColumns": [
{ "mData": null },
{ "mData": "Name", "sTitle": "Name" , "sWidth": "20%"},
{ "mData": "UserName", "sTitle": "UserName", "sWidth": "20%" },
{ "mData": "Passowrd","sTitle": "Passowrd", "sWidth": "20%" },
{ "mData": "Email","sTitle": "Email" , "sWidth": "20%"},
{ "mData": "IsActive","sTitle": "IsActive" , "sWidth": "20%" …
Run Code Online (Sandbox Code Playgroud) 我尝试使用jQuery DataTables,但我得到了错误
TypeError:c未定义
我不知道我的代码有什么问题,因为我可以看到JSON正确检索并且格式正确但我不知道它有什么问题我得到了上述错误.
我的JSON:
{"Data":[{"LOGIN":10184},{"LOGIN":10214},{"LOGIN":10180},{"LOGIN":10187},{"LOGIN":10179},{"LOGIN":10280},{"LOGIN":201},{"LOGIN":10238},{"LOGIN":10296},{"LOGIN":10312}]}
Run Code Online (Sandbox Code Playgroud)
和我的DataTables代码:
$(document).ready(function() {
$('#tablename').dataTable( {
"processing": true,
"serverSide": true,
"ajax": {
"type": "POST",
"url": "https://test.com/api/db/select",
"data": function ( json ) { return JSON.stringify( { "Sql": 12 } );},
"contentType": "application/json; charset=utf-8",
"dataType": "json",
"processData": true,
beforeSend : function(xhr){
var access_token = sessionStorage.getItem('access_token');
xhr.setRequestHeader('Authorization', 'Bearer ' + access_token);
}
},
"dataSrc": "Data",
"columns": [
{ "data": "LOGIN" }
]
} );
} );
Run Code Online (Sandbox Code Playgroud) 我有兴趣使用jQuery dataTable ...你能告诉我并给我一个如何使用它的例子......我也听说过jqGrid也是如此......他们两个都更好?
我一直在尝试下载dataTable ..
<script type="text/javascript" src="jquery.dataTables.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#showdata').dataTable( {
//what must i fill in this area?
});
});
</script>
Run Code Online (Sandbox Code Playgroud) 使用DataTable,我可以订购,列表,分页,但我想检测分页何时更改,我已经看过API,但我唯一可以做的是更改页面但没有检测到此更改.
我一直在使用jQuery DataTables插件(http://datatables.net)很长一段时间,通常我们使用默认大小和使用"bStateSave": true
选项超级精细.
但现在我真的需要将分页的大小设置为[10,25,50,100]而不是我需要这个,比如说[1,2,3].我通过设置选项让菜单设置如此,aLengthMenu:[1,2,3]
如果我选择其中一个选项,它会设置正确的选择量.
但是在dataTable STARTUP上,它没有将长度设置为1,2,3而是设置为默认值"10"
我错过了哪个选项?提前致谢!
一直试图改变搜索:过滤:在我创建的数据表中.
我试过这个,我发现:
$(document).ready(function() {
oTable = $('#datatable-example_filter').dataTable({
"aaSorting": [[ 10, "desc" ]],
"bJQueryUI": true,
"aLengthMenu": [[25, 50, 100, 250, 500, -1], [25, 50, 100, 250, 500, "All"]],
"sPaginationType": "full_numbers",
"oLanguage": {
"sSearch": "Filter: "
}
});
} );
Run Code Online (Sandbox Code Playgroud)
但它不起作用,#datatable-example_filter是由dataTable生成的div内的id的名称
我有以下DataTable(全宽css类设置宽度= 100%)
<table class="datatable full-width">
<thead>
<th>LOB</th>
<th>Creditor Line 1</th>
<th>Creditor Line 2</th>
<th>Address</th>
<th>City</th>
<th>State</th>
<th>Zip</th>
<th></th>
</thead>
<tbody>
...
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
var profileTable =
$(".datatable").dataTable({
"iDisplayLength": 25,
"bDestroy": true,
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bAutoWidth": false
});
Run Code Online (Sandbox Code Playgroud)
一切都工作正常,直到有一个长文本字符串的记录...当一个记录显示非常长的文本时,数据表溢出在页面右侧.(见下面的截图,红线是页面应该结束的地方) http://i1109.photobucket.com/albums/h430/tbarbedo/overflow.jpg
有人能告诉我如何将文本包装在单元格中或防止出现溢出问题?
我试过'table-layout:fixed'...这可以防止溢出但是将所有列设置为相同的宽度.
谢谢