首頁  >  文章  >  web前端  >  js設定控制項的隱藏與顯示的兩種方法_javascript技巧

js設定控制項的隱藏與顯示的兩種方法_javascript技巧

WBOY
WBOY原創
2016-05-16 16:38:561437瀏覽

用JavaScript隱藏控制項的方法有兩種,分別是透過設定控制項的style的「display」和「visibility」屬性。

當style.display="block"或style.visibility="visible"時控製或見,當style.display="none"或style.visibility="hidden"時控制不可見。不同的是「display」不僅隱藏控件,而且被隱藏的控件不再佔用顯示時佔用的位置,而「visibility」隱藏的控件僅僅是將控件設置成不可見了,控件仍然佔俱原來的位置。

function displayHideUI()
{
var ui =document.getElementById("bbs");
ui.style.display="none";
}
function displayShowUI()
{
var ui =document.getElementById("bbs");
ui.style.display="";//display为空的话会好使,为block会使后边的空间换行
}
function visibilityHideUI()
{
var ui =document.getElementById("bbs");
ui.style.visibility="hidden";
}
function visibilityShowUI()
{
var ui =document.getElementById("bbs");
ui.style.visibility="visible";
}
</script>

值 描述
none 此元素不會被顯示。
block 此元素將顯示為區塊級元素,此元素前後會帶有換行符號。
inline 預設。此元素會被顯示為內聯元素,元素前後沒有換行符號。
inline-block 行內塊元素。 (CSS2.1新增的值)
list-item 此元素會顯示為清單。
run-in 此元素會根據上下文以區塊級元素或內嵌元素顯示。
compact CSS 中有值compact,不過由於缺乏廣泛支持,已從CSS2.1 中刪除。
marker CSS 中有值marker,不過由於缺乏廣泛支持,已從CSS2.1 中刪除。
table 此元素會以區塊級表格顯示(類似

),表格前後都有換行符號。
inline-table 此元素會作為內嵌表格來顯示(類似
),表格前後沒有換行符號。
table-row-group 此元素會以一個或多個行的分組來顯示(類似)。
table-header-group 此元素會以一個或多個行的分組來顯示(類似)。
table-footer-group 此元素會以一個或多個行的分組來顯示(類似)。
table-row 此元素會顯示為一個表格行(類似)。
table-column-group 此元素會以一個或多個列的分組來顯示(類似)。
table-column 此元素會以一個單元格列顯示(類似)
table-cell 此元素會以表格儲存格顯示(類似

table-caption 此元素會以表格標題顯示(類似

inherit 規定應該從父元素繼承display屬性的值。

今天解決的問題是在jsp頁面中給css定義的label.error的類別一個id,然後透過控制id的可見性來實現收起div時清除js的提示訊息。具體如下:
在準備介面的函數中var label1 = document.getElementById("label1");

$(document).ready(function() {
$(".flipp .span4").click(function() {
$(this).parent().next().toggle();
$(this).parent().parent().prevAll().find(".panel").hide();
$(this).parent().parent().nextAll().find(".panel").hide();
var label1 = document.getElementById("label1");
label1.style.display="none";
})

然後在jsp對應的地方加入:

<label class="error" id="label1" for="currentPWD" generated="true" style="display:inline"></label>

對於css定義的label.error類,可以使用$("label.error").removeAttr("style").attr("style", "display: none;");來實現如上的功能。而且,貌似也不用在地下對應的位置為label定義id值。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn