JQuery Overlay只加载一次

时间:2011-06-24 03:08:13

标签: jquery overlay jquery-tools

当用户提交表单时加载叠加..然后出现对话框(进行一些验证等)..当用户关闭它时,继续处理表单..不能再提交表单。 :(

这是代码片段,有一些控制建议。你可以帮帮我吗?感谢名单

            <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>

2 个答案:

答案 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;
});