与朋友一起填写表格。
当出现一些填充错误,并且弹出输入错误时,这将改变输入错误高度,因此将按下填充表单。
我希望在子attr可见时更改父高度;
这就是我测试但不知何故不起作用。
<script>
$(document).ready(function(){
if($("#txtFullName").attr("visibility","visible")){
$("#txtFullName").parent().css("height","30px");
});
</script>
答案 0 :(得分:1)
obj[str]
答案 1 :(得分:1)
<script>
$(document).ready(function(){
if($("#txtFullName").attr("visibility","visible")) {
$("#txtFullName").parent().css("height","30px");
}
});
</script>
您错过了if
条件的结束括号。 visibility也是一个css属性,因此您需要使用$("#txtFullName").css("visibility")
。
传递.css
和.attr
的第二个参数表示您正在设置该属性的值。 $("#txtFullName").css("visibility")
就足够了。
使用可见性时要注意的一点是,可见性设置为隐藏的元素不可见但仍保留其占用的空间。因此,您将看到最初渲染的空白区域。
您还可以使用.is(":visible")
方法检查元素是否可见。例如,$("#txtFullName").is(":visible")
。
答案 2 :(得分:1)
$(document).ready(function(){
if($("#txtFullName").is(":visible")) {
$("#txtFullName").parent().css("height","30px");
}
else {
$("#txtFullName").parent().css("height","0px");
}
});
使用is
条件将有助于我的信念。
答案 3 :(得分:1)
由于 visibility 是无效的HTML属性,您应该使用.is(“:visible”)。
但是,在.NET环境中,可见性是使用的属性。和隐藏一样。但这些是.NET自己的属性,而不是HTML,因此jQuery可能无法检测到它们。
.is(“:visible”)方法检查所选元素是否可见。无论它是如何隐藏或显示的。
if($("#txtFullName").is(":visible")){
$("#txtFullName").parent().css("height","30px");
}