在下拉列表上调用“destroy”在jQuery 2.1.3中不起作用

Calling 'destroy' on dropdownchecklist not working in jQuery 2.1.3

本文关键字:不起作用 jQuery 下拉列表 调用 destroy      更新时间:2023-09-26
$("#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中抛出以下错误。

错误:初始化前无法调用下拉列表上的方法;试图调用方法"destroy"

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

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

jQueryUI widgets(以及使用 widget factory 的插件)通常有一个 .data 属性,可用于检测 widget 是否已初始化:

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

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

另外,请记住,该插件的页面说它应该与jQuery 1.11一起使用,因此,如果您遇到兼容性问题,您不应该太惊讶。