在初始化之前无法调用[widget name]上的方法

时间:2013-01-11 07:15:21

标签: jquery jquery-plugins widget

我已经初始化了我的插件,但是当我尝试在插件中调用方法时,我一直收到cannot call methods on collapsableTabs prior to initialization

该插件已加载并显示正常。我在页面上有一个输入控件:

<input type="button" id="allOptions" value="Options:" onclick="javascript:populateOptions();" />

...

function populateOptions() 
{ 
  var optionSelector = $(this).collapsableTabs('allOptions'); <-- FAILS 
} 

当我点击按钮时,我收到error消息。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

首先必须在调用方法之前初始化窗口小部件,即:

$(this).collapsableTabs().collapsableTabs("allOptions")

这种笨重语法的一种替代方法是从小部件本身的_create()或_init()方法中调用allOptions()。