2017-09-26 45 views
0

我知道如何發送一個沒有使用jQuery進行頁面刷新的表單。這不是我在這裏所說的。我只是想指出。我有一個按鈕,當onclick()將顯示一個窗體和一個隱藏的鏈接。我面臨的問題是當表單被提交頁面刷新時,隱藏的鏈接返回到隱藏的初始狀態。有沒有一種方法可以防止功能在頁面刷新時被恢復?

有沒有一種方法可以防止頁面刷新時恢復功能?這就是我想知道的。但如果要做到這一點的最好方法是通過防止表單刷新,我會做到這一點。我只是想知道如果我能以另一種方式爲知識而做。我試圖學習新的方法,而不是總是做同樣的老jQuery的東西。

HTML

<button id="showOwn" type="button" onclick="showHiddenForm();" > 
I'm a returning client</button> 

<div id="hiddenForm" style="display:none;"> 

<form method="POST" action="form.php"> 
<input type="submit" name="validate_customer" value="Confirm Identity"> 
</form> 

<a id="hiddenLink" href='other_page.php>Continue as Roger Rabbit</a> 

</div> 

腳本

function showHiddenForm(){ 
    //show hidden form 
    document.getElementById("hiddenForm").style.display='block'; 
} 
+2

「_Is有什麼辦法可以防止功能要在頁面refresh_恢復」存儲cookie的值,指示是否應該執行該功能或沒有,然後檢查值你的功能? – csmckelvey

+0

@csm_dev:純粹的客戶端信息不應該存儲在cookies中了。這總是一個壞主意,只是在網絡存儲之前沒有其他選擇。現在有了。 –

+0

@csm_dev:我用新標題編輯了我的問題。 –

回答

2

使用localStorage的:

window.onload =() => { 
if(localStorage.getItem("show")) 
    showHiddenForm(); 
}; 

function showHiddenForm(){ 
localStorage.setItem("show",true); 
//show hidden form 
document.getElementById("hiddenForm").style.display='block'; 
} 
+0

謝謝你,先生。井井有條。 –

1

我只是想知道,如果我能做到這一點的另一種方式對知識的緣故。

存儲在本地存儲(或會話存儲)的標誌(spec | MDN),並在頁面加載,使用該標誌的存在/由於缺少以確定是否掛鉤函數(或一般,做什麼這是你想要做不同的,不同的)。

相關問題