测试环境
jquery-easyui-1.5.3
需求场景
点击父页面tab 页关闭按钮时,需要做判断,判断该tab页面是否可以关闭:获取子页面js中定义的taskStatus,如果taskStatu不为taskEnd,则表示任务还在执行,不让关闭
解决方法
给tab标签页增加onBeforeClose事件处理函数,如下:
代码语言:javascript复制$(function(){
代码语言:javascript复制 $('#tabs').tabs({
代码语言:javascript复制 onBeforeClose: function(title,index){
代码语言:javascript复制 if (title.indexOf('debug-') != -1) { // debug调试页面,否则查看用例页面
代码语言:javascript复制 var target = this;
代码语言:javascript复制 var tab = $(target).tabs('getTab', index);
代码语言:javascript复制 var tabID = tab.panel('options').id;
代码语言:javascript复制 var taskStatus = document.getElementById('iframe-' tabID).contentWindow.taskStatus;
代码语言:javascript复制 if (taskStatus) {
代码语言:javascript复制 if ( taskStatus != 'taskEnd') {
代码语言:javascript复制 $.messager.alert('告警', '正在调试运行,请等待运行结束后再关闭!', 'warn')
代码语言:javascript复制 return false;
代码语言:javascript复制 }
代码语言:javascript复制 }
代码语言:javascript复制 return true;
代码语言:javascript复制 }
代码语言:javascript复制 return true;
代码语言:javascript复制 }
代码语言:javascript复制 });
代码语言:javascript复制});
说明:这里title,index分别为所点击tab的title和索引