刷新BootstrapSwitch不起作用

时间:2018-08-28 12:21:37

标签: javascript bootstrap-4

这是我的问题

我正在尝试重新加载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:"&nbsp",
    labelWidth:"auto",
    offColor:"default",
    offText:"OFF",
    onColor:"primary",
    onText:"ON",
    radioAllOff:false,
    readonly:false,
    size:null,
    state:true,
    wrapperClass:"wrapper",
});
table.draw();

}

0 个答案:

没有答案