jQuery-ui 小部件已呈现

jQuery-ui widget is rendered

如何检查 jQuery-ui 小部件是否呈现(版本 1.11.2)?避免 Uncaught Error: cannot call methods on xxxx prior to initialization; attempted to call method 'xxxx' 错误。

一种方法是像

一样使用数据api

如果您的小部件名称是 datepicker 并且元素 ID 是 date 那么

if($('#date').data('datepicker')){
    //call method since it is initialized
}

演示:Fiddle


同样可以通过 :data() 选择器

if ($('#date').is(':data(datepicker)')) {
    //call method since it is initialized
}