需要当前为jQuery选项卡选择的选项卡ID

ejf*_*ejf 18 jquery jquery-ui jquery-tabs

我知道我可以获取当前所选选项卡的索引,但是我可以以某种方式获取当前所选选项卡的ID(相当于ui.panel.id如果这是由选项卡事件触发...但它不是)?我不想使用索引,因为选项卡的顺序可能会改变.我不喜欢使用样式标记,因为在将来的版本中可能会更改.有这个方法吗?如果没有,我可以以某种方式使用索引来访问它(甚至可能首先访问面板对象)?还有其他想法吗?

Sam*_*son 21

您可以使用:visible伪选择器来定位可见面板:

$("#tabs .ui-tabs-panel:visible").attr("id");
Run Code Online (Sandbox Code Playgroud)

值得注意的是,您可以从activate事件中检索活动选项卡:

$("#tabs").tabs({
    activate: function (event, ui) {
        console.log(ui.newPanel[0].id);
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 然后你给出一个更具体的选择器.`$("#group1 .ui-state-active")`. (3认同)

Hom*_*mer 13

Jonathan Sampson的回答不再适用.尝试...

$("#tabs .ui-tabs-panel:visible").attr("id");

jsFiddle:http://jsfiddle.net/tbEq6/