我想根据AJAX内容禁用并启用jQueryUI选项卡。
<script>
$(function () {
$("#tabs").tabs({
disabled: [1, 2,3],
collapsible: true,
fx: [{
opacity: 'toggle',
duration: 'slow',
height: 'toggle'
},
{
opacity: 'toggle',
duration: 'slow',
height: 'toggle'
}],
beforeLoad: function (event, ui) {
ui.jqXHR.error(function () {
ui.panel.html(
"Couldn't load this tab. We'll try to fix this as soon as possible. ";
});
}
});
});
</script>
和HTML代码:
<div id="tabs">
<ul>
<li class="context-tab"><a id="recent-tab" href="#iframe1">Recent</a></li>
<li class="context-tab"><a id="popular-tab" href="#iframe2">Popular</a></li>
<li class="context-tab"><a id="random-tab" href="#iframe3">Random</a></li>
<li class="context-tab"><a id="question-tab" href="#iframe4">By Question</a></li>
</ul>
<iframe id="iframe1" src="Default2.aspx" style="width: 100%;" height="900"></iframe>
<iframe id="iframe2" src="Default3.aspx" style="width: 100%;"></iframe>
<iframe id="iframe3" src="Default2.aspx" style="width: 100%;"></iframe>
<iframe id="iframe4" src="Default3.aspx" style="width: 100%;"></iframe>
</div>
例如,当用户选择popular-tab
时,它会加载Default3.aspx页面。在每个页面中,我都有Next
按钮。我希望当用户点击Next
按钮时,用户可以使用下一个标签,但不能使用之前的标签。例如,当recent-tab
中的用户点击Next
按钮recent-tab
时,如果popular-tab
已启用,则page1.aspx
已停用。
编辑01:
我有4个页面,例如page2.aspx
,page3.aspx
,page4.aspx
,recent-tab
,默认情况下我有标签,当用户选择tabe page1.aspx
加载{{1}时}对于用户和page2.aspx
以及page3.aspx
和page4.aspx
处于非活动状态,在第1页中我有按钮,当用户点击此按钮时,我想转到popular-tab
并加载{{1} }和非活动的新标签和活动的热门标签。等等,在第2页的下一个按钮中编写此代码时不起作用。谢谢你的帮助
感谢。
答案 0 :(得分:1)
在“下一步”按钮的点击事件中,您可以使用onclick功能禁用之前的标签。
例如,如果您单击“recent-tab”中的下一个按钮,则下一个按钮将如下所示:
<button onclick="$('.next-button').tabs({ disabled: [ 1, 2, 3 ] })">Next</button>
以下是关于选项卡禁用的官方文档。