2012-11-13 124 views
0

我正在嘗試編寫一個PHP Java腳本,但正努力在本節編寫代碼。如何使用Java腳本顯示/隱藏div單擊按鈕

我試圖做一個BUTTOM在這種形式打開

到目前爲止,我編寫的代碼是

function display(e){ 
    if (e.clicked) 
     document.getElementById('2').style.display = 'none'; 
    else 
     document.getElementById('2').style.display = 'block'; 

和表單代碼的;

<input type="button" value=" Book Now " onClick="display(this)"/></input> 

任何幫助指出我清楚的錯誤將是巨大的,活的代碼可以在 http://affordablecleaners.co.uk/quote/

由於可以看出,

亨利

回答

2

嘗試類似以下

東西
var i = 0; 
var display = function() { 
    document.getElementById('2').style.display = (i++ % 2) ? "none" : "block"; 
}; 

Essentia lly,我們正在創建一個變量i,並在每次調用函數時增加一個變量。如果在調用該函數時,i是偶數,則我們將其設置爲display: block。否則,將其設置爲display: none

該解決方案的最大缺點是凌亂的全球範圍。如果這是一個問題,您也可以執行以下操作。

var display = function() { 
    document.getElementById('2').style.display = (document.getElementById('2').style.display == "none") ? "block" : "none"; 
}; 
+0

哦,我喜歡這個,現在讓我試試吧 –

+0

但是等等,我認爲它需要是? 「none」:「block」;因爲我希望它被隱藏,除非點擊 –

+0

哦,對不起。如果您希望在第一次點擊時顯示它,請將其更改爲「i = 1」或更改語句('?「none」:「block」')。更新 – jeremy

0

這裏的(未經測試)邏輯...

function display(state, which){ 

if (state==1) {document.getElementById(which).style.display ='none';} 

    else 

    {document.getElementById(which).style.display = 'block';} 
} 

,然後在你的按鈕...

以打開

onclick="display('1',someDIV)" 

關斷

onclick="display('0',someDIV)" 
+0

您是否可以在單擊一個按鈕時獲得雙倍的體驗? –

+0

這是一個開關,但是如果你願意,你可以使用L-Click進行ON和R-Click。你想要嗎? –

+0

如果這就是你的意思,我不知道如何處理雙擊。 –

相關問題