我知道我可以得到当前所选标签的(数字)索引,如下所示:
$('.selector').tabs('option', 'selected');
有没有办法在事件处理程序之外获取当前所选选项卡的ID?通过“ID”,我指的是ui对象中的字符串属性(ui.panel.id),它作为参数传递给事件监听器回调 - 但我试图在回调之外进行。
我知道我可以将我自己的解决方案合并在一起,但我想确保我不是首先重新发明轮子。
我宁愿使用ID而不是索引,这样改变我的选项卡的顺序不会破坏我的代码 - 它至少会更强大和可读。
答案 0 :(得分:1)
据我所知,选中的标签选择了ui-tab类。你可以使用
$('.selector').find('.ui-tab-selected a');
获取所选标签。它是元素,其中href属性 - 活动面板的标识符。
答案 1 :(得分:1)
@Matt Ball
您可以使用与活动标签关联的“ui-state-active”类来选择它,然后从内部href链接获取id:
var selected_tab_id = $('.ui-state-active a', '#ui-tabs-widget').attr('href').split('#')[1];
'#ui-tabs-widget'是实际标签窗口小部件的ID,因此请将其替换为自动标签,以便仅在您想要的窗口小部件中选择活动标签,而不是在页面中的每个窗口小部件中选择。