JQuery - 输入标记更改可见性属性

时间:2015-10-16 09:03:06

标签: javascript jquery html

我有一个非常简单的输入标签:

<input id="DAhour" type="number" style="width:50px; font-size: xx-small; visibility:hidden">

首先必须不可见。然后,如果我将组合框更改为正确的索引,它应该变得可见。我设法正确地获得了组合框和所选项目,但我无法使输入标签可见。我尝试过:

$("#DAhour").css("visibility", "visible");

但它不起作用,因为如果我用

检查可见性
$("#DAhour").is(":visible")

它始终等于false。然后,当组合框再次改变时,我应该能够再次看不到它,我再次尝试

$("#DAhour").css("visibility", "hidden");

3 个答案:

答案 0 :(得分:4)

因为当您使用visibilty rule时,即使该元素不可见,它也会消耗 DOM 中的空间。所以,jQuery的visible selector会认为它是可见的。

  

如果元素占用文档中的空间,则认为元素是可见的。可见元素的宽度或高度大于零。

     

visibility: hiddenopacity: 0的元素被视为可见,   因为他们仍然在布局中消耗空间。

如果您想真正隐藏元素,请使用display规则,即display: none或简写方法.hide() / show()

答案 1 :(得分:0)

尝试使用$("#DAhour").show()$("#DAhour").hide()方法

答案 2 :(得分:0)

尝试使用以下方法检查可见性:

if($("#DAhour").css("visibility")!== "hidden")

使用

更改可见性
$("#DAhour").css("visibility","hidden");

$("#DAhour").css("visibility","visible");