当我尝试为我的ASP.Net应用程序创建选项卡时,我试图找出JQuery的错误(我是JQuery的新手)..
以下是我正在尝试的代码,当我尝试使用Chorme Dev.tool进行调试时发现错误“没有这样的方法'添加'用于标签小部件实例”并且我发现了“tabsDiv.tabs(”add“,'#main ',pages [i] [0]);“这不再起作用,因为新版本的JQuery不推荐使用“add”方法。 谁能帮助我找到克服这个问题的方法?
<script type="text/javascript">
$(document).ready(function () {
var pages = [
['Events', "/Listings.aspx", "/AddEvent.aspx", "UpdateOrDelete.aspx"],
['Performance', "/Performance.aspx"]
];
var myPage = '<%=Request.Path %>';
var tabsDiv = $('#masterTabsDiv');
tabsDiv.tabs({
select: function (event, ui) {
document.location = pages[ui.index][1];
return false;
}
});
var indexToSelect = 0;
for (var i = 0; i < pages.length; i++) {
for (j = 0; j < pages[i].length; j++) {
if (pages[i][j] == myPage) {
indexToSelect = i;
window.alert("set block 2");
break;
}
}
tabsDiv.tabs("add", '#main', pages[i][0]);
}
window.alert("set block 4");
tabsDiv.find('li').removeClass('ui-tabs-selected ui-state-active');
tabsDiv.find('li').eq(indexToSelect).addClass('ui-tabs-selected ui-state-active');
});
</script>
谢谢, RAAM
答案 0 :(得分:4)
从jQuery UI 1.10开始,您需要向DOM添加一个新的li
元素,然后调用.tabs("refresh")
,因此您的代码将类似于
var tabsDiv = ('#masterTabsDiv');
tabsDiv.find('ul').append("<li><a href='#newTab'>New Tab</a></li>");
tabsDiv.append("<div id='newTab'>New content</div>");
tabsDiv.tabs("refresh");