我只是使用我自己的 MVC 框架使用 jquery 选项卡编写一个类似的应用程序。这是我解决“在选项卡内浏览”的方法
问题:我的表单位于单独的视图中,并且它们使用 ajax 加载到选项卡中。
jQuery(document).ready(function(){
var tabs = jQuery("#tabs > ul").tabs().bind('tabsload', function( event, ui ){
jQuery( 'form', ui.panel ).submit(function() {
jQuery.ajax({
type: 'post',
url: $(this).attr('action'),
data: $(this).serialize(),
success: function( response ){
if(response.match( /^http:\/\/.*$/ ))
{
tabs.tabs('url', ui.index, response );
tabs.tabs('load', ui.index );
}
}
});
return false;
});
});
在每个选项卡加载后,我会覆盖选项卡内容中表单的默认提交事件(可访问ui.panel
)。然后表单被序列化并作为 ajax 帖子发送。如果响应是一个 URL,那么我只需将选项卡的 URL 设置为它并重新加载它。
希望这可以帮助