我已经尝试了很多示例,但是我无法使用我的代码来获取所选标签的ID
js code:
$(function() {
$('#tabs').tabs({
select: function(event, ui) {
console.log($(ui.tab)); // the tab selected
console.log(ui.index);
},
show: function(event, ui) {
console.log($(ui.tab)); // the tab shown
console.log(ui.index);
}
});
});
HTML:
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">
<p>text1</p>
</div>
<div id="tabs-2">
<p>text2</p>
</div>
<div id="tabs-3">
<p>text3</p>
</div>
</div>
我放入了pastebin,因为我不明白ow代码块在堆栈中工作!我已经四次按空间,似乎从来没有好好运作。
到目前为止,我已查看过这些解决方案: jquery tab selected jQuery tabs - Get the index of previously selected tab jQuery tabs - Get the index of previously selected tab Get tab selected Id in jQuery UI 1.9
答案 0 :(得分:1)
你应该使用ui.panel
,返回div标签元素:{如果它是你要找的东西?}
$(function () {
$('#tabs').tabs({
select: function (event, ui) {
console.log(ui.panel.id);
console.log(ui.index);
},
show: function (event, ui) {
console.log($(ui.panel));//jq object
console.log(ui.panel.id);
console.log(ui.index);
}
});
});
答案 1 :(得分:0)
我通常采用盗版方式... $('#tabs li.active')。这将为您提供id ='tabs'元素下的活跃li。如果你可以获得元素,也... jQuery允许你做这样的事情...... $(元素)。
从那里你可以做var ID = $(element.attr('id');
答案 2 :(得分:0)
请尝试这一个 - 注意不同的事件名称('激活')和ui对象的不同属性的用法:
$(function() {
$('#tabs').tabs({
activate: function(event, ui) {
console.log(ui.newPanel[0].id);
}});
});