我有一系列DIV
ID,如下所示CSS
他们都在display:none
以下的一个班级。
var paintDivs = ["div_2ndSubCategoryID","div_3rdSubCategoryID","div_4thSubCategoryID","div_ColorNameID","div_ColorNoID","div_PaintSizeID"];
长话短说,我现在想要的是显示DIV
中的所有paintDivs
。
以下是我所拥有的。
循环迭代工作正常,但DIV
中的单个paintDivs
仍未显示。
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display');
});
我甚至尝试在CSS中创建另一个名为showThis
并设置display:block
的类并尝试在下面,仍然没有做到这一点。
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).attr('class','showThis');
});
我做错了什么?任何见解将不胜感激。
答案 0 :(得分:3)
您可以简单地使用show()
:
$.each(paintDivs, function(idx, valIs) {
$("#" + valIs).show();
});
否则,要正确更改CSS样式,请使用css()
:
$.each(paintDivs, function(idx, valIs) {
$("#" + valIs).css("display", "block");
});
答案 1 :(得分:3)
您正在使用.css
的getter函数。使用下面的setter,
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display', 'block');
});
答案 2 :(得分:2)
这一行:
$('#' + valIs).css('display');
获取display属性的值,你想设置它,这意味着你应该这样做来实际设置它:
$('#' + valIs).css('display','block');
或者更简单地说,只需使用:
$('#' + valIs).show();
或者,如果你想获得幻想,你可以:
$("#" + valIs).fadeIn();
答案 3 :(得分:2)
假设'#+ ValIs'是您想要的ID,将显示从none更改为normal就像这样简单:
jQuery.each(paintDivs, function(idx, valIs){
$('#' + valIs).css('display','normal');
});
$('#example').css(propertyName)
返回propertyName
的值$('#example').css(propertyName, value)
将propertyName设置为值
答案 4 :(得分:1)
没有迭代,你可以在选择器中使用数组连接
var divs = ['test1','test3','test5'];
$('#' + divs.join(',#')).show();
将您的选择器构建为
$('#test1,#test3,#test5')