2016-09-15 57 views
0

嗨即時通訊編寫一個函數,我可以重用顯示/隱藏模態,並在我的網站 ,但它似乎並沒有工作。當我在函數外部使用相同的代碼,並使用直接的id和類名稱而不是變量時,它工作正常,只有當它傳遞它們時,它看起來不工作?模態函數不顯示模態

<input id="lrBtn" type="button" value="Login/Register" onclick="ShowModal('PopUpLR','closeLR');" /> 




function ShowModal(var popup,var closeBtn){ 
     var modal = document.getElementById(popup); 
     var span = document.getElementsByClassName(closeBtn)[0]; 
     modal.style.display = "block"; 
     span.onclick = function() { 
      modal.style.display = "none"; 
     } 
     window.onclick = function(event) { 
      if (event.target == modal) { 
       modal.style.display = "none"; 
      } 
     } 
    } 
+0

有你Bootstrap + JQuery加載了嗎? – FluxCoder

+0

另外,您可以嘗試移動按鈕上方的代碼? – FluxCoder

+0

嘗試上面的按鈕仍然沒有:(我有jquery加載,但不是引導,因爲我不使用它atm我應該嗎? – GregHBushnell

回答

1

定義您的ShowModal功能的方式是錯誤的,您需要把它寫這樣

function ShowModal(popup,closeBtn){ 
// your code 
} 

,而不是

function ShowModal(var popup,var closeBtn) 
{ 
// your code 
} 

全碼:

function ShowModal(popup,closeBtn){ 
     var modal = document.getElementById(popup); 
     var span = document.getElementsByClassName(closeBtn)[0]; 
     modal.style.display = "block"; 
     span.onclick = function() { 
      modal.style.display = "none"; 
     } 
     window.onclick = function(event) { 
      if (event.target == modal) { 
       modal.style.display = "none"; 
      } 
     } 
    }