2011-06-24 13 views
0

ユーザーがフォームを送信すると、オーバーレイが読み込まれます..ダイアログが表示されます(いくつかの検証など)..ユーザーがフォームを処理し続けると、再度フォームを提出してください。 :(JQueryオーバーレイは一度だけロードされます

これは、コードの断片は、コントロールのいくつかの提案で、..ですUは私を助けることはできますか?ありがとう

  <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

ご提出イベントの終わりに、あなたはfalseを返している。これは防ぐことができますイベントのデフォルトアクション(フォームの送信)とイベントの他のリスニング関数への伝播を停止します。

オーバーレイが必要な条件があると仮定すると、jqueryイベントメソッドを使用してデフォルトアクションオーバーレイを表示しているときにのみ表示されます。

$('#form, #myform').submit(function(evt) { 
    if(showOverlay){ 
    evt.preventDefault(); 
    adOver.load(); 
    // or you could return false here 
    } 
} 
+0

我々はRオーバレイをif検証の内側にロードします。 :(仕事していませんでした。 – Nayeli

0

あなたは( '')あなたの$にコールバックを追加する必要があります。ロード機能

$( '#フォーム、#myform')。(関数(提出){

$("#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; 
}); 
関連する問題