欢迎来到代码驿站!

jquery

当前位置:首页 > 网页前端 > jquery

jquery blockUI 遮罩不能消失与不能提交的解决方法

时间:2021-03-17 09:40:04|栏目:jquery|点击:
复制代码 代码如下:

//显示遮罩
$.blockUI({
message: $('#divlogin'),
css:{width:"400px", height:"255px", top: ($(window).height() - 400) /2 + 'px', left: ($(window).width() - 400) /2 + 'px'}
});
//取消遮罩
$("#cancel").click(function() {
$.unblockUI();
});

取消遮罩是,js 动态生成的外层没有消失。
在FF3.0.4,Chrome下都没问题,只是 IE6 IE7 Ie8下不正常。
打开源码,找到了下面这句话:
复制代码 代码如下:

var lyr1 = ($.browser.msie) ? $('<iframe class="blockUI" style="z-index:'+ z++ +';border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="javascript:false;"></iframe>')
: $('<div class="blockUI" style="display:none"></div>');

可以看到,在IE下,它是生成了一个 iframe,并在这个 iframe 中加载你自己的对话框。
那么,现在只是外层不消失,自己手动让它消失。
复制代码 代码如下:

$.blockUI({ message: $("#dialog")});
$("#cancel").click(function() {
$.unblockUI();
$(".blockUI").fadeOut("slow");
});

OK,IE6 IE7都可以了。
使用blockui后,遮罩层数据不能提交到后台了,使用ajax可以
要提交到后来,请教后明白,遮罩层不再当前form中,所以提交后没有form不能提交
解决办法,把遮罩层部分,放置到form中
$('#divlogin').parent().appendTo(jQuery("form:first"));---还为完全找到放到form外面的遮罩层数据,所以不是很清楚。

上一篇:jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)

栏    目:jquery

下一篇:jquery获取transform里的值实现方法

本文标题:jquery blockUI 遮罩不能消失与不能提交的解决方法

本文地址:http://www.codeinn.net/misctech/82331.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有