parent.layer.close(layerIndex);方法中间无法关闭!!!!!!!!!!!

提问 未结
7 921
adam1982
adam1982 2017-1-12
悬赏:5飞吻
parent.layer.close(layerIndex);方法只能在方法结尾关闭,如果我在方法中间关闭没有效果,源码如下
// 采集入口
function fetchData(layerIndex){
$.ajax({
type: 'post',
url: '/fetch/fdata.html',
data: {userName:global.currentUser.userName,
furl:Etui.Query.GetQueryString('furl'),
category : Etui.Query.GetQueryString('category'),
type:type},
dataType: 'json',
async: false,
timeout: 100000,
success: function (data){
//console.log(data);
$('body').show();
//设置数据类型
category = data.h.category;
//console.log(category);
init();
initEvent();
initFormData(data.h);
//设置图片
$.each(data.hp,function(idx,value){
createUploadImage(value.category,value.name, value.cover, value.digest, (null == value.pictag ? "" : value.pictag), true);
})
parent.layer.close(layerIndex);
},
error: function (e) {
layer.close(layerIndex);
//console.log(e);
//console.log("数据加载异常...");
Dialog.msg('初始化数据失败!');
}
});
}
不知道是不是个bug,ajax改成同步也是一样的效果@贤心
回帖
  • 可以的,你看看哪里没写对,或者index不对?
    0 回复
  • adam1982
    2017-1-13
    @放逐之魚 没问题的,能帮我看下么,我给你看下我的index怎么定义的
    var layerIndex = parent.layer.msg('数据采集中...', {icon:16,time:60*1000});
    fetchData(layerIndex);
    0 回复
  • @adam1982 放到哪里无法关闭?加了parent没有
    0 回复
  • adam1982
    2017-1-13
    @放逐之魚 你看下我的问题,放到sunccess方法一进来就想关闭,不像在方法最后关闭
    0 回复
  • @adam1982 可能因为layer是异步的,所以才最后执行
    0 回复
  • adam1982
    2017-1-13
    0 回复
  • 小魔方
    小魔方 VIP2 (社区之光)
    2017-1-16
    fetchData(layerIndex); 写到 layer.msg 的 success 回调函数里去试试
    0 回复