重新初始化后,下拉列表在ie浏览器中不显示选择

Dropdownchecklist not showing selection in internet explorer after re-initialization

本文关键字:浏览器 显示 选择 ie 初始化 下拉列表      更新时间:2023-09-26

在ajax发布后,我销毁并重新初始化dropdownchecklist,以便我可以重新填充列表。在chrome/firefox中,这可以正常工作。但是,在Internet explorer中,选定的项目不会以逗号分隔的形式出现在文本框部分,而是文本显示为空。

$distList.dropdownchecklist("destroy");
$distList.html(items);
$($distList, $container).dropdownchecklist({
                        icon: { placement: 'right', toOpen: 'ui-icon-triangle-1-s', toClose: 'ui-icon-triangle-1-n' },                    
                       firstItemChecksAll: true, 
                       width: 151, 
                       maxDropHeight: 150, 
                       onComplete: function () {
                        }
                    });

编辑

下面的链接将说明为什么我使用destroy和initialize。它讨论了刷新只适用于更改选择,而不是添加/更改列表本身。

发现

在IE调试器中搞乱后,我发现关闭display: inline-block消除了这个问题,但无法弄清楚如何在代码中复制这种效果。

尝试添加setTimeout

$distList.dropdownchecklist("destroy");
$distList.html(items);
function doList() {
    $($distList, $container).dropdownchecklist({
        icon: { placement: 'right', toOpen: 'ui-icon-triangle-1-s', toClose: 'ui-icon-triangle-1-n' },                    
        firstItemChecksAll: true, 
        width: 151, 
        maxDropHeight: 150, 
        onComplete: function () {}
    }); 
}
setTimeout(doList, 50);