我们如何在 jQuery Datatable 调用结果中启动另一个 jQuery 插件而不是页面就绪功能?
Posted
技术标签:
【中文标题】我们如何在 jQuery Datatable 调用结果中启动另一个 jQuery 插件而不是页面就绪功能?【英文标题】:How can we initiate another jQuery plugin inside jQuery Datatable call results instead of page ready function? 【发布时间】:2016-08-04 04:10:17 【问题描述】:对于我的 Web 应用程序,我使用带有 ajax 的 jQuery 数据表从数据库中获取数据。实际上,“icheck”是在 jQuery 页面就绪函数中启动的。问题是在调用数据表或数据表中发生任何过滤器或搜索后,获取数据正确,并且 icheck 复选框显示为正常复选框。 我怎样才能回忆起数据表调用中的 icheck 插件调用。我的代码如下
<table id="viewcat" class="table table-bordered table-striped mar-bottom0 mydatatable">
<thead>
<tr>
<th style="width: 9%"><input type="checkbox" class="minimal" id="bulkDelete" /> <button type="submit" id="deleteTriger" name="submit" class="btn btn-primary btn-xs hor-align" value="Delete Selected" >Delete</button></th>
<th style="width: 2%">Sl.no</th>
<th style="width: 15%">Category Name</th>
<th style="width: 20%">Reference Links</th>
<th style="width: 25%">Image</th>
<th style="width: 15%"></th>
<th style="width: 10%"></th>
</tr>
</thead>
</table>
脚本如下
<script>
$(function ()
$("#viewcat").DataTable(
"fnRowCallback" : function(nRow, aData, iDisplayIndex)
$("td:nth-child(2)", nRow).append(aData[7]);
return nRow;
,
"processing": true,
"serverSide": true,
"order": [ 2, "asc" ],
"aoColumnDefs": [ "bSortable": false, "aTargets": [ 0, 1, 4, 5 ,6] ],
"ajax":
url :"maincategory/viewdata.php", // json datasource
type: "post",
error: function()
$(".viewcat-error").html("");
$("#viewcat").append('<tbody class="viewcat-error"><tr><th colspan="7">No data found in the server</th></tr></tbody>');
$("#viewcat_processing").css("display","none");
);
);
</script>
请帮我解决它..
【问题讨论】:
iCheck
激活码在哪里?
将数据追加到表后,将//iCheck for checkbox and radio inputs $('input[type="checkbox"].minimal, input[type="radio"].minimal').iCheck( checkboxClass: 'icheckbox_minimal-blue', radioClass: 'iradio_minimal-blue' );
放入$.ajax.success
;
ajax 成功不支持 jQuery 数据表..它不提供任何结果
这里提供的"ajax": function (data, callback, settings)
怎么样ajax datatables
【参考方案1】:
哦..终于找到了..这可能对其他人有帮助..数据表插件中已经存在一个 api 函数而不是 ajax 成功..即“fnDrawCallback”。
<script>
$(function ()
$("#viewcat").DataTable(
"fnRowCallback" : function(nRow, aData, iDisplayIndex)
$("td:nth-child(2)", nRow).append(aData[7]);
return nRow;
,
"fnDrawCallback": function( oSettings )
$('input[type="checkbox"].minimal, input[type="radio"].minimal').iCheck(
checkboxClass: 'icheckbox_minimal-blue',
radioClass: 'iradio_minimal-blue'
);,
"processing": true,
"serverSide": true,
"order": [ 2, "asc" ],
"aoColumnDefs": [ "bSortable": false, "aTargets": [ 0, 1, 4, 5 ,6] ],
"ajax":
url :"maincategory/viewdata.php", // json datasource
type: "post",
error: function()
$(".viewcat-error").html("");
$("#viewcat").append('<tbody class="viewcat-error"><tr><th colspan="7">No data found in the server</th></tr></tbody>');
$("#viewcat_processing").css("display","none");
);
);
</script>
【讨论】:
以上是关于我们如何在 jQuery Datatable 调用结果中启动另一个 jQuery 插件而不是页面就绪功能?的主要内容,如果未能解决你的问题,请参考以下文章
在 JQuery Datatable 中选择另一个页面后如何重绘 Datatable?
使用 jQuery ajax 调用重新加载 DataTable 内容