2015-08-26 78 views
0

我做了兩個彈出窗口。一個用於詢問是否提交表單,如果用戶點擊「是」,則提交表單。我有問題的一件事是在成功提交表單後顯示另一個(彈出窗口)。這只是宣佈彈出窗口。Jquery |如何成功提交表單後顯示div

這是html中的彈出窗口。

<!-- modalpopup:start (1)--> 
<div style="display:none;" id="popWindow" class="popWindow"> 
<span class="modalWindow"></span> 
<div class="popLayer"> 
    <button type="button" class="xclose" onclick="document.getElementById('popWindow').style.display='none'"><img src="images/x_btn.png" title="닫기" /></button> 
    <div class="modalpopup_top"><img class="left_logo" src="images/left_logo.png" title="GAMEPARTYdevelopers_logo" /></div> 
    <div class="modalpopup_contants"> 
     <p></p> 
     <div class="buttonbox"><button onclick="document.getElementById('popWindow').style.display='none'" class="button100">취소</button><button id="sub_form" val ue="확인" onclick="sub_form();" class="button100_01">확인</button></div> 
    </div> 
</div> 

<!-- modalpopup:start (2) --> 
<div style="display:none;" id="popWindow_ok" class="popWindow"> 
<span class="modalWindow"></span> 
<div class="popLayer"> 
    <button type="button" class="xclose" onclick="document.getElementById('popWindow_ok').style.display='none'"><img src="images/x_btn.png" title="닫기" /></button > 
    <div class="modalpopup_top"><img class="left_logo" src="images/left_logo.png" title="GAMEPARTYdevelopers_logo" /></div> 
    <div class="modalpopup_contants"> 
     <p></p> 
     <div class="buttonbox"><button id="refresh_form" value="확인" onclick="document.getElementById('popWindow_ok').style.display='none'" class="button100_01">> 확인</button></div> 
    </div> 
</div> 

,這是被稱爲 '#sub_form' 被點擊sub_form功能。

function sub_form() { 
    document.getElementById('popWindow').style.display='none'; 

    modi_Game.action = "modify_games.html"; 
    modi_Game.submit(function(event) { 
     event.preventDefault(); 
     document.getElementById('popWindow_ok').style.display='block'; 
    } 
} 

上面的一個沒有工作,所以我改變如下。

var modi_Game = document.modi_game; 
function sub_form() { 
document.getElementById('popWindow').style.display='none'; 

modi_Game.submit(function(event) { 
    event.preventDefault(); 
    $.ajax({ 
      data: $("#modi_game").serialize(), 
      type: $(this).attr('POST'), 
      url: $(this).attr('modify_games.html'), 
      success: function(response) { 
       document.getElementById('popWindow_ok').style.display='block'; 
      } 
    }); 
    return false; 
    }); 
} 

這也不是woking。我怎麼弄出來的? 我想要做的就是點擊div(id =「popWindow」)子項的按鈕(id =「sub_form」)來提交表單,然後在表單之後顯示div(id =「popWindow_ok」)已成功提交。有沒有辦法做到這一點? 請讓我知道劑量任何人有一個想法。謝謝。


你們知道爲什麼警報不能在下面的代碼中工作嗎?

function sub_form() { 
    document.getElementById('popWindow').style.display='none'; 

    modi_Game.action = "modify_games.html"; 
    modi_Game.submit(function() { 
     alert("ok"); 
    }); 
} 

回答

0

添加到您的成功回調:

$('#popWindow_ok').show(); 
1

確定。像這樣修改你的函數然後它就會工作。在頁面加載時綁定事件和使用$("#modi_Game").submit();

function sub_form() { 
      document.getElementById('popWindow').style.display = 'none'; 

      var modi_Game = document.getElementById("modi_Game"); 

      modi_Game.action = "yourlink.html"; 

      $("#modi_Game").submit(); 

     } 

     $(document).ready(function() { 
      $("#modi_Game").submit(function (event) { 
       alert("Stoping the form submitting"); 
       event.preventDefault(); 
       document.getElementById('popWindow_ok').style.display = 'block'; 
      }); 

     }); 
+0

是的形式提交表單。我試過了,但表單只是提交時沒有提示。 –

+0

好的。我已經更新了答案。嘗試這個。 – Entwickler

1

另一種解決辦法是

function sub_form() { 
    document.getElementById('popWindow').style.display='none'; 

    modi_Game.action = "modify_games.html"; 

    $("#modi_Game").submit(function (event) { 
       alert(); 
       event.preventDefault(); 
       document.getElementById('popWindow_ok').style.display = 'block'; 
      }); 

    $("#modi_Game").submit(); 
}