2014-03-01 47 views
1

我有一個表單,當用戶單擊提交按鈕時,使用JS來完成一些操作。如果用戶沒有啓用JS,我想禁用表單並隱藏它。我想我可以這樣做:僅當啓用Javascript時才顯示錶格

<form style="display:none;" onLoad="this.style.display='inline'"> 
    Text 
    <input type="text"> 
</form> 
<noscript>Noscript stuff here</noscript> 

但是,它不起作用。由於我沒有真正使用JS,我可能只是犯了一個令人尷尬的明顯錯誤,我會猜測並說這與「這個」部分有關。

+0

表單沒有「onload」事件,這就是爲什麼發佈的代碼將無法正常工作。 – user2864740

+1

[只有在啓用JS的情況下如何才能寫HTML代碼?](http://stackoverflow.com/questions/5181346/how-can-i-write-html-code-only-if-js-is -enabled)這實際上是重複的http://stackoverflow.com/questions/30319/is-there-a-html-opposite-to-noscript –

回答

2

嘗試是被通過JavaScript時所顯示的頁面加載一種無形的div:

<div id="hideThisFromNonJs" style="display:none"> 
    <form> 
     Text 
     <input type="text"> 
    </form> 
</div> 

<script type="text/javascript"> 
    document.getElementById('hideThisFromNonJs').style.display='block'; 
</script> 
+1

看起來像我們引用相同的答案:http://stackoverflow.com/questions/5181346/how-can-i-write-html-code-only-if-js-is-enabled haha​​ –

+1

Hahahaha有什麼可能! :) – chridam

+0

哈哈相當不錯,因爲它是谷歌的頂級成績! –

4

你可以做的是在默認情況下隱藏的表單,然後使用JavaScript來取消隱藏它。這樣的事情應該工作:

<form id="jsform" style="display:none;"> 
    Text 
    <input type="text"> 
</form> 

<script type="text/javascript"> 
    document.getElementById('jsform').style.display='block'; 
</script> 
+0

@ user2864740謝謝,我忘了編輯OP的標記 –

+1

乾杯。我會接受答案,但由於某種原因,它告訴我我必須等待7分鐘。猜猜我會回來的。 – Hiigaran

+1

@Hiigaran是的,他們讓你等待一小會兒,確保有足夠的好回答滾進去......你應該接受chridam的回答,雖然他和我一樣,但是先回答... –

相關問題