是否可以使元素对 jquery 不可见
Is it possible to make an element invisible to jquery
我有两个输入字段字段 class,一个 display:none。我想查询非display:none.
的输入字段的值
编辑(举例)
<div id="Parent1" style="display:none">
<p>
<input type="text" class="title" value="">
</p>
</div>
<div id="Parent2">
<p>
<input type="text" class="title" value="this is the one I want">
</p>
</div>
js
$('.title').val();
Returns 空白,因为第一个标题 class 是空的。我想忽略 parent 的第一个标题是 display:none。
使用 :visible select 或未隐藏的 select 元素。
$('.class:visible')
注意:(来自文档)
Elements are considered visible if they consume space in the document. Visible elements have a width or height that is greater than zero.
Elements with visibility: hidden
or opacity: 0
are considered visible, since they still consume space in the layout.
jquery 中有一个 :visible
选择器(还有一个 :not()
选择器,即 :not(:visible)
)
由于您有两个元素,您必须遍历它们并找到隐藏的元素。
我看到这个过程对我来说很有说服力:
$('.class_el').each(function(el){
if(el.hidden)
//do something
});
您也可以使用 :visible 选择器,例如 !$(el).is(':visible') 而不是读取元素的 属性。
这是你的选择!
干杯!
我有两个输入字段字段 class,一个 display:none。我想查询非display:none.
的输入字段的值编辑(举例)
<div id="Parent1" style="display:none">
<p>
<input type="text" class="title" value="">
</p>
</div>
<div id="Parent2">
<p>
<input type="text" class="title" value="this is the one I want">
</p>
</div>
js
$('.title').val();
Returns 空白,因为第一个标题 class 是空的。我想忽略 parent 的第一个标题是 display:none。
使用 :visible select 或未隐藏的 select 元素。
$('.class:visible')
注意:(来自文档)
Elements are considered visible if they consume space in the document. Visible elements have a width or height that is greater than zero.
Elements with
visibility: hidden
oropacity: 0
are considered visible, since they still consume space in the layout.
jquery 中有一个 :visible
选择器(还有一个 :not()
选择器,即 :not(:visible)
)
由于您有两个元素,您必须遍历它们并找到隐藏的元素。 我看到这个过程对我来说很有说服力:
$('.class_el').each(function(el){
if(el.hidden)
//do something
});
您也可以使用 :visible 选择器,例如 !$(el).is(':visible') 而不是读取元素的 属性。
这是你的选择! 干杯!