在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 () {
}
});
修改
以下Link将说明我使用destroy和initialize的原因。它讨论了刷新仅适用于已更改的选定内容,而不是添加/修改列表本身。'
DISCOVERY
在IE调试器中乱搞后,我发现关闭显示:内联块消除了问题,但无法弄清楚如何在代码中复制该效果。
答案 0 :(得分:0)
尝试添加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);