要显示的数组中的jquery div
我有一个要显示的数组中的jquery div,jquery,Jquery,我有一个DIVid数组,如下所示,在CSS中,它们都位于一个带有display:none的类下面 var paintDivs = ["div_2ndSubCategoryID","div_3rdSubCategoryID","div_4thSubCategoryID","div_ColorNameID","div_ColorNoID","div_PaintSizeID"]; 长话短说,我现在想要的是在paintdiv中显示所有DIVs 下面是我所拥有的。 循环迭代工作正常,但是paintdiv
DIV
id数组,如下所示,在CSS
中,它们都位于一个带有display:none
的类下面
var paintDivs = ["div_2ndSubCategoryID","div_3rdSubCategoryID","div_4thSubCategoryID","div_ColorNameID","div_ColorNoID","div_PaintSizeID"];
长话短说,我现在想要的是在paintdiv
中显示所有DIV
s
下面是我所拥有的。
循环迭代工作正常,但是paintdiv
中的单个DIV
s仍然没有显示
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display');
});
我甚至尝试在CSS中创建另一个类,名为,showThis
和setdisplay:block
,并尝试在下面创建,但仍然没有成功
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).attr('class','showThis');
});
我做错了什么?如果您有任何见解,我们将不胜感激。您只需使用:
否则,要正确更改CSS样式,请使用:
$.each(paintDivs, function(idx, valIs) {
$("#" + valIs).css("display", "block");
});
您正在使用
.css
的getter函数。使用如下设置器
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display', 'block');
});
这一行:
$('#' + valIs).css('display');
Get是display属性的值,您要设置它,这意味着您应该这样做以实际设置它:
$('#' + valIs).css('display','block');
或者更简单地说,只需使用:
$('#' + valIs).show();
或者,如果你想变得花哨,你可以:
$("#" + valIs).fadeIn();
假设“#+ValIs”是您想要的id,将显示从无更改为正常非常简单:
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display','normal');
});
从
返回propertyName的值
$('#example').css(propertyName, value)
将propertyName设置为value,无需迭代。您可以在选择器中使用数组联接
var divs = ['test1','test3','test5'];
$('#' + divs.join(',#')).show();
这将使您的选择器
$('#test1,#test3,#test5')
您至少尝试过
$('#'+valIs).css('display','block')代码>你自己?@adeneo我没有尝试你建议的,但是我尝试了$('#'+valIs.show();但那没用。我尝试了你建议的方法,但仍然没有成功。顺便说一句,我不理解否决票,经过多次努力,这是一个合理的问题。@MadushM:如果这不起作用,那么你是在做其他错误的事情。显示更多的代码,或者更好的是,创建一个。这就是我的想法,我尝试了Show()并尝试了您建议的内容,但都没有成功。谢谢您的建议。我尝试了你建议的一切,但没有一个奏效。@MadushM:你确定你的身份证是正确的吗?实际上是否存在id为div\u 2ndSubCategoryID
的div?也就是说,
?在DOM准备好之后,您是否也在运行此操作?是的
,但我知道问题出在哪里。不是在DOM准备好之后。哇,我忽略了什么。谢谢@Matt BurlandYes你是对的。我试过你提到的,但还是没有显示出来。我不知道为什么不会。谢谢你的解释。我修复了它,但仍然没有显示。我必须说,这是非常有趣的。谢谢,我相信它会派上用场的。
var divs = ['test1','test3','test5'];
$('#' + divs.join(',#')).show();
$('#test1,#test3,#test5')