当用户提交表单时加载叠加..然后出现对话框(进行一些验证等)..当用户关闭它时,继续处理表单..不能再提交表单。 :(
这是代码片段,有一些控制建议。你可以帮帮我吗?感谢名单
<script>
$(document).ready(function() {
$("#subtitulo img[title]").tooltip();
var overlay = $("#overlay"), adOver = {};
overlay.overlay({
top: 100,
mask: {
color: '#fff',
loadSpeed: 200,
opacity: 0.5
},
closeOnClick: false,
load: false,
onClose: function() {
}
});
adOver = overlay.data('overlay');
$('#form, #myform').submit( function() {
/*$("#overlay").overlay({
top: 100,
mask: {
color: '#fff',
loadSpeed: 200,
opacity: 0.5
},
closeOnClick: false,
load: true
});*/
adOver.load();
$('#overlayinfo').html('<p><img src=../imagenes/tooltip/loader.gif /></p>');
$('#overlayinfo').load('<?= $datosServ[carpeta] ?>/overlay/add.php','add=1&'+sendObjValues('myform'));
return false;
});
});
</script>
答案 0 :(得分:0)
在提交活动结束时,您将返回false。这将阻止事件的默认操作(提交表单),并停止将事件传播到其他侦听功能。
假设有一些条件你需要叠加,你可以使用jquery事件方法来阻止默认操作,只有当你显示叠加时。
$('#form, #myform').submit( function(evt) {
if(showOverlay){
evt.preventDefault();
adOver.load();
// or you could return false here
}
}
答案 1 :(得分:0)
您需要在$('')。load function
中添加回调$('#form,#myform')。submit(function(){
$("#overlay").overlay({
top: 100,
mask: {
color: '#fff',
loadSpeed: 200,
opacity: 0.5
},
closeOnClick: false,
load: true
});
adOver.load();
$('#overlayinfo').html('<p><img src=../imagenes/tooltip/loader.gif /></p>');
$('#overlayinfo').load('<?= $datosServ[carpeta] ?>/overlay/add.php', 'add=1&'+sendObjValues('myform'), function() {
$("#overlay").overlay("close");
});
return false;
});