在销毁之前检查JQueryUI按钮是否存在?

时间:2013-12-12 06:12:18

标签: javascript jquery html5 jquery-ui

假设我有以下代码:

JS:

$('.remove').button("destroy");

如果我在调用.button()之前运行它,我会在控制台中收到如下错误:

Error: cannot call methods on button prior to initialization; attempted to call method 'destroy'

如何在尝试销毁按钮之前检查按钮是否实际创建?

5 个答案:

答案 0 :(得分:2)

$('.remove.ui-button').button("destroy");

答案 1 :(得分:1)

你可以尝试

$('.remove').filter(function(){
    return $(this).data().uiButton != undefined
}).button('destroy')

答案 2 :(得分:1)

您可以使用此 -

if ($('.remove').hasClass("ui-button"))
{
    // Button exists
}
else
{
    // Button does not exists
}

答案 3 :(得分:0)

尝试利用“创建”按钮

创建一个全局变量

var created=false;
将ui应用于按钮

$('button').button({create:function(){created=true;}});
删除时

if(created==true) 
{
  // destroy
}

答案 4 :(得分:0)

我刚想通了

if($('.remove').is(":ui-button")){
     $('.remove').button("destroy");
}