如果元素隐藏则做某事[重复]
Posted
技术标签:
【中文标题】如果元素隐藏则做某事[重复]【英文标题】:do something if element hidden [duplicate] 【发布时间】:2014-01-13 06:17:56 【问题描述】:如何使用 jquery 检查元素是否可见或隐藏并执行某些操作?
下面给出的是我的表单相关代码,
<form>
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname"><br>
Full name: <input type="text" name="fullname"><br>
DOB: <input type="text" name="dob">
Address: <input type="text" name="address">
</form>
当显示名字文本字段或姓氏文本字段时,我需要隐藏全名文本字段。
【问题讨论】:
很抱歉我之前没有看到这个答案。 :hidden, or :visible selectors api.jquery.com/category/selectors/visibility-filter-selectors 【参考方案1】:试试这样的
if($('#testElement').is(':visible'))
//what you want to do when is visible
为您的代码
if($('input[name="firstname"], input[name="lastname"]').is(':visible'))
$('input[name="fullname"]').hide();
参考
http://api.jquery.com/visible-selector/
【讨论】:
姓氏?看来您复制粘贴了错字:-) @Vishal 解决了它...【参考方案2】:if($('input[name="firstname"], input[name="lastname"]').is(':visible') === true)
$('input[name="fullname"]').hide();
【讨论】:
【参考方案3】:你应该改变
<input type="text" name="fullname">
to
<input type="hidden" name="fullname">
隐藏输入字段
【讨论】:
【参考方案4】:这应该可以$(element).is(":visible")
【讨论】:
【参考方案5】:我不知道你的问题背后的逻辑,但这个演示应该可以解决问题。 DEMO
$(document).ready(function()
if($('#firstname').is(':visible') || $('#lastname').is(':visible'))
$('#fullname').parent().hide();
)
我添加了一些父 div 来隐藏文本和一次输入。如果您愿意,您可以将文本包装在标签标签中以便更清晰地输出。
【讨论】:
以上是关于如果元素隐藏则做某事[重复]的主要内容,如果未能解决你的问题,请参考以下文章