![](/img/trans.png)
[英]Show div if it is display style none & hide if display style is block
[英]show a div having style=“display:none” after passing value to js variable
最初div id =“showHide”是不可見的。 我想在vall的值不為null時使其可見。 但是代碼不起作用。 雖然變量vall正在獲取值,但div仍然不可見。 js codescript有什么問題? 我正在使用jsp。
<head>
</head>
<body>
<div id =" showHide" style="display:none">
/*HTML TABLE*/
</div>
<script type="text/javascript">
alert("first alert");
var vall = "<%=vall%>";
if (vall != null)
{
var mydiv = getElementById.("showHide");
mydiv.style.display ="block";
alert("second alert");
<% System.out.println("jsvar="+vall);%>
}
</script>
</body>
當我登錄控制台時出現錯誤:
uncaught syntaxError:意外令牌(
並且警報框也沒有顯示。
嘗試:
mydiv.style.display = "block";
代替
mydiv.style.visibility = "visible";
visibility
和display
不同。 相反,您應該將display
值從none
更改為block
( <div>
的默認值):
mydiv.style.display = "block";
你確定在調用JS之前實際上已經加載了內容嗎? 嘗試將JS移動到正文的末尾,或者將代碼包裝在可以在頁面加載時調用的函數中。 如果你想要真正的幻想,你應該使用jQuery來幫助你解決這個問題。 http://api.jquery.com/ready/
<div id =" showHide" style="display:none">
/*HTML TABLE*/
</div>
刪除id的空格並將Js代碼放到div的后面,試一試。
我想你忘了聲明變量mydiv。
替換此行mydiv = document.getElementById(“showHide”);
通過
var mydiv = document.getElementById(“showHide”);
enter code here<div id ="showHide" style="display:none">
/*HTML TABLE*/
// javascript代碼只是檢查出來
var vall = 10;
var mydiv = null
if (vall != null)
{
mydiv = document.getElementById("showHide");
mydiv.style.display ="block";
}
我認為當腳本標記中的代碼運行時,它找不到具有該id的div標記,並且當div在頁面中呈現時,您再次將其可見性設置為隱藏。
我建議把你的腳本標簽放在div之后。
代替
var mydiv = getElementById.("showHide");
采用
var mydiv = document.getElementById.("showHide");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.