这是我的问题
我正在尝试重新加载DataTable,在内部,每行上都有BootstrapSwitch按钮,它们没有正确地重新加载。这是js:
function reload_table() {
var new_html = send_get_html_to('ajax/reloadDepot.php', '');
var table = $('#myTable').DataTable();
var myswitch = $('.mySwitch').bootstrapSwitch();
myswitch.bootstrapSwitch('destroy');
table.destroy();
$('#myTable').html(new_html);
table = $('#myTable').DataTable();
$('.mySwitch').bootstrapSwitch();
table.draw()
}
不知何故,本来可以正常工作的bootstrapSwitch变成了一个大的开关按钮锁,与常规开关相比更大,更丑陋。
一个主意?
编辑-这是开关的原始html内容:
<div class="bootstrap-switch-mini bootstrap-switch bootstrap-switch-wrapper bootstrap-switch-animate bootstrap-switch-off" style="width: 69.2px;">
这是在调用我的函数之后:
<div class="bootstrap-switch-off bootstrap-switch bootstrap-switch-wrapper bootstrap-switch-animate" style="width: 101.2px;">
Edit2-我设法获得了正确的选择,但尺寸/位置没有变化,但我想我已经找到了解决方法。
这是更新的代码
function reload_table() {
var new_html = send_get_html_to('ajax/reloadDepot.php', '');
var table = $('#myTable').DataTable();
var myswitch = $('.mySwitch').bootstrapSwitch();
myswitch.bootstrapSwitch('destroy');
table.destroy();
$('#myTable').html(new_html);
table = $('#myTable').DataTable();
$('.mySwitch').bootstrapSwitch({
animate:true,
baseClass:"bootstrap-switch",
disabled:false,
handleWidth:"auto",
indeterminate:false,
inverse:false,
labelText:" ",
labelWidth:"auto",
offColor:"default",
offText:"OFF",
onColor:"primary",
onText:"ON",
radioAllOff:false,
readonly:false,
size:null,
state:true,
wrapperClass:"wrapper",
});
table.draw();
}