本人的情况是在一个tabs页面点击添加按钮打开一个新的的tabs,添加数据之后刷新原tabs
打开一个新的tabs(注:jq("#index_tabs"),是使用了一个函数来引用parent页面的id)
var jq = top.jQuery; //可以使用该函数获取父页面id
jq("#index_tabs").tabs('add',{
title:title,
content:content,
closable:true,
iconCls:'fi-eye icon-green'
});
完整代码:
function detaildeclarationFun(id) {
if (id == undefined) {//点击右键菜单才会触发这个
var rows = declarationDataGrid.datagrid('getSelections');
id = rows[0].id;
} else {//点击操作里面的删除图标会触发这个
declarationDataGrid.datagrid('unselectAll').datagrid('uncheckAll');
}
var title="申报信息详情";
var url='${path }/declaration/detailPage?id='+id;
if (jq("#index_tabs").tabs('exists', title)){
jq("#index_tabs").tabs('select', title);
refreshTab({tabTitle:title,url:url});
} else {
var content = '<iframe scrolling="auto" frameborder="0" src="'+url+'" style="width:100%;height:100%;"></iframe>';
jq("#index_tabs").tabs('add',{
title:title,
content:content,
closable:true,
iconCls:'fi-eye icon-green'
});
}
}
添加之后关闭当前tabs,并刷新院tabs
//ajax提交
function addDeclaration(){
var status=$("#status").val();
var declarationTitle=$("#declarationTitle").val();
var ue=UE.getEditor('editor');
//var editorBox = UE.getEditor('editor');
var editorContent=ue.getContent();
var jq = top.jQuery; //获取页面属性
$.ajax({
type :"post",
url :"${path}/declaration/add",
data :{
"declarationTitle":declarationTitle,
"declarationContent":editorContent,
"status":status
},
dataType:"json",
success : function(result) {
if (result.success) {
parent.$.messager.alert('提示', result.msg, 'info');
/* 提交成功后清空表单
$("#declarationTitle").val("");
editorBox.setContent(''); */
jq("#index_tabs").tabs('close','添加申报信息');//添加成功后关闭该tabs
refreshTab({tabTitle:"申报信息",url:"${path }/declaration/manager"});//刷新申报信息页面,待测试
} else {
parent.$.messager.alert('错误', eval(result.msg), 'error');
}
}
});
}
/**
* 刷新tab
* @cfg
*example: {tabTitle:'tabTitle',url:'refreshUrl'}
*如果tabTitle为空,则默认刷新当前选中的tab
*如果url为空,则默认以原来的url进行reload
*/
function refreshTab(cfg){
var refresh_tab = cfg.tabTitle?jq("#index_tabs").tabs('getTab',cfg.tabTitle):jq("#index_tabs").tabs('getSelected');
if(refresh_tab && refresh_tab.find('iframe').length > 0){
var _refresh_ifram = refresh_tab.find('iframe')[0];
var refresh_url = cfg.url?cfg.url:_refresh_ifram.src;
//_refresh_ifram.src = refresh_url;
_refresh_ifram.contentWindow.location.href=refresh_url;
}
}