簡體   English   中英

Modal 立即打開和關閉

[英]Modal opens and closes immediately

我試圖在提交按鈕后顯示帶有 php 查詢結果的模式,但由於提交表單會刷新頁面,模式會閃爍到屏幕上,而不是在手動關閉之前一直保留。

<script>
var modal = document.getElementById("myModal");
var btn = document.getElementById("submitForm");
var span = document.getElementsByClassName("close")[0];
var form = document.getElementsByClassName("myForm")[0];

btn.addEventListener('click', openModal);
function openModal() {
    form.submit();
    modal.style.display = "block";
    console.log("shiet");
}

span.addEventListener('click', closeModal);
function closeModal(){
    modal.style.display = "none";
}

window.addEventListener('click', function(event){
  if (event.target == modal) {
    modal.style.display = "none";
  }
});
</script>

單擊按鈕 id=submitForm 時,我希望彈出一個模式,其中包含 php 腳本的結果。 然后可以通過在屏幕外單擊或通過單擊 span 元素激活 closeModal 來關閉此模式。

嘗試這個:

window.addEventListener('click', function(event){
  if (event.target != modal) {
    modal.style.display = "none";
  } else {
    modal.style.display = "block";
  }
});

這里我的意思是,如果用戶點擊的是窗口而不是模態,則隱藏它; 否則保持模態可見......

我認為模態閃爍是因為這個原因!

我希望這有效!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM