$("#myDropdown").dropdownchecklist("destroy");
$("#myDropdown").dropdownchecklist({ icon: {}, emptyText: "Select GatePass Type", forceMultiple: false, closeRadioOnClick: true, maxDropHeight: 250, width: 200 });


我有上面的jquery代码,它在jQuery 1.7.2中工作时没有错误,但是在jQuery 2.1.3中抛出错误。


  错误:初始化前无法在dropdownchecklist上调用方法;尝试将方法称为“销毁”


我尝试了以下修改,基本上是尝试检查它是否已初始化(不确定是否是检查它是否已初始化的正确方法),但我仍然遇到相同的错误!

if ($("#myDropdown").initialized) {
$("#myDropdown").dropdownchecklist("destroy");
}

最佳答案

jQueryUI小部件(和使用小部件工厂的插件)通常具有.data属性,可用于检测小部件是否已初始化:

if ($("#myDropdown").data("ui-dropdownchecklist")) {
    $("#myDropdown").dropdownchecklist("destroy");
}


这是一个小提琴示例:http://jsfiddle.net/unhz22wy/

另外,请记住,the plugin's page表示它应该与jQuery 1.11一起使用,因此,如果遇到兼容性问题,不要感到惊讶

10-06 12:51