繁体   English   中英

隐藏元素而不在jquery中将显示设置为none

[英]hide element without setting the display to none in jquery

我想折叠表单的一部分而不将其display设置为none 如果我将display设置为none ,则绕过验证,这就是为什么我不想将display设置为none 我知道我可以将可见性设置为hiddenvisible但是此解决方案不可用于渲染视图,因为折叠部分的空间保留在那里。 这导致视图看起来非常奇怪,空白空间没有内容。

所以我的问题是隐藏html表单的一部分(没有为它插入占位符)而不将其display设置为none ,这样我仍然可以执行验证。

一些HTML代码:

<td style="margin: 5px; border-bottom: 1px solid; display:none; overflow: hidden;" colspan="3">
    <div>...</div>
</td>

display最初设置为无,但一旦首次展开,我将height设置为100%并删除display样式。

你可以把它从屏幕上移开:

$(elem).css("position", "absolute").css("left", -9999);

或者将它的高度设置为0:

$(elem).css("height", 0);

虚假display:none的最简单方法display:none是通过将位置设置为绝对(因此元素从流中取出,不再影响外部元素的渲染)和隐藏的可见性(因此不再绘制)。

$(elem).css('visibility', 'hidden').css('position','absolute');

将元素的不透明度设置为0。

$(elem).css("opacity", 0);
$("#ele").css({"height" : 0, "width" : 0, "opacity" : 0});

用jquery隐藏元素......

$('element').addClass('hidden');

并在您的CSS中使用您认为合适的内容使该元素“隐藏”

.hidden{
  /* whatever you find appropriate */
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM