do something if element hidden
本问题已经有最佳答案,请猛点这里访问。
如何通过jquery检查元素是否可见或隐藏,并执行一些操作?
下面给出了我的表单相关代码,
1 2 3 4 5 6 7 | <form> First name: <input type="text" name="firstname"> Last name: <input type="text" name="lastname"> Full name: <input type="text" name="fullname"> DOB: <input type="text" name="dob"> Address: <input type="text" name="address"> </form> |
当显示"名字"文本字段或"姓氏"文本字段时,我需要隐藏"全名"文本字段。
试试这个
1 2 3 | if($('#testElement').is(':visible')){ //what you want to do when is visible } |
为了你的代码
1 2 3 | if($('input[name="firstname"], input[name="lastname"]').is(':visible')){ $('input[name="fullname"]').hide(); } |
参考文献
http://api.jquery.com/visible-selector/
我不知道你的问题背后的逻辑,但这个演示应该能做到这一点。演示
1 2 3 4 5 | $(document).ready(function(){ if($('#firstname').is(':visible') || $('#lastname').is(':visible')) $('#fullname').parent().hide(); }) |
我添加了一些父级分隔符来隐藏文本和一次输入。如果需要,可以将文本包装在标签标记中,以便更清晰地输出。
1 2 | if($('input[name="firstname"], input[name="lastname"]').is(':visible') === true) $('input[name="fullname"]').hide(); |
这应该可以用
你应该换一下
1 2 3 | <input type="text" name="fullname"> to <input type="hidden" name="fullname"> |
隐藏输入字段