我怎么能用jquery看到一个看不见的控件(隐藏并显示不起作用)
如何使用jQuery更改控件的可见性? 我有一个控件,它的可见属性为false …(不是css)
当我使用show()
函数时没有发生任何事情,似乎hide()
和show()
方法是针对控件的css集,而不是可见属性…
谢谢你的回答,
最好的祝福
您无法使用jQuery执行此操作,asp.net中的visible="false"
表示控件未呈现到页面中 。 如果你想让控件转到客户端,你需要做style="display: none;"
所以它实际上是在HTML中,否则客户端显示没有任何内容,因为该元素不在您的服务器发送的HTML中。
如果删除visible
属性并添加style
属性,则可以使用jQuery来显示它,如下所示:
$("#elementID").show();
旧答案( 帕特里克之前)
要更改visibility
,您需要使用.css()
,如下所示:
$("#elem").css('visibility', 'visible');
除非您需要让元素占用页面空间,否则请使用display: none;
而不是visibility: hidden;
在你的CSS中,然后只需:
$("#elem").show();
与大多数jQuery函数一样, .show()
和.show()
函数处理display
而不是visibility
性:)
.show()和.hide()修改css显示规则。 我想你想要:
$(selector).css('visibility', 'hidden'); // Hide element $(selector).css('visibility', 'visible'); // Show element
这是我用来处理这个问题的一些代码。
首先我们展示元素,它通常会通过.show()函数将显示类型设置为“阻止”,然后将CSS规则设置为“可见”:
jQuery( '.element' ).show().css( 'visibility', 'visible' );
或者,假设隐藏元素的类被称为隐藏,例如在Twitter Bootstrap中,toggleClass()可能很有用:
jQuery( '.element' ).toggleClass( 'hidden' );
最后,如果你想链接函数,或许有幻想的淡化效果,你可以这样做:
jQuery( '.element' ).css( 'visibility', 'visible' ).fadeIn( 5000 );