如何使 jquery ui tabs 的每个tab代表一个非Ajax的链接
你有没有这样朴素的需求?
用一个Tab Group, 里面放两个tab, 并且每个tab代表一个链接;
切换tab时,不通过AJAX获得内容,而是重新渲染整个页面;
渲染后的页面里还是能看到这个Tab Group,只不过现在高亮的tab是另一个了。
如何用jquery ui的tabs实现这个东西? 我们一步一步来。
A.页面展现时应该高亮哪个tab? 让服务器端传一个参数过来吧。Tab 0对应的Servlet把这个参数值置为0, Tab 1则置为1.
$("#theTabs").tabs("select", ${tabIndex});
$("#theTabs").tabs( "url" , 0 , "servlet0.do" ); $("#theTabs").tabs( "url" , 1 , "servlet1.do" );
$("#theTabs").tabs({ select: function(event, ui) { var url = $.data(ui.tab, 'load.tabs'); if( url ) { location.href = url; return false; } return true; } });
//第三段 $("#theTabs").tabs({ select: function(event, ui) { var url = $.data(ui.tab, 'load.tabs'); if( url ) { location.href = url; return false; } return true; } }); //第一段 $("#theTabs").tabs("select", ${tabIndex} - 1); //第二段 $("#theTabs").tabs( "url" , 0 , "servlet0.do" ); $("#theTabs").tabs( "url" , 1 , "servlet1.do" );