jQuery - 使用类遍历所有元素并更改其样式

时间:2012-06-06 17:57:36

标签: javascript jquery

我知道这应该很简单,但我遇到了多个问题。首先,我不知道如何获得课程的所有元素并改变他们的显示。我找到了带有此示例代码的.each方法:

$('.classname').each(function(index) {
        alert(index);
});

我需要什么而不是警告才能更改元素的显示属性,而不是'无'阻止'?

第二个问题是,类名是从隐藏字段中收集的。我们将此变量命名为service。当我尝试替换' .classname'使用' +' +服务我收到错误提示'语法错误,无法识别的表达式:。'。

所以实际代码应该是这样的:

var service=$('#service').val();
$('.'+service).each(function(index) {
        alert(index);
});

我确定这不会很复杂,但我无法弄清楚。

任何替代解决方案当然都是受欢迎的。

2 个答案:

答案 0 :(得分:4)

结帐.show

var service=$('#service').val();
$('.'+service).show(); // roughly equivalent to .css('display', 'block');

但是,正如show的文档指出的那样,该方法将匹配的元素display属性返回到它之前的状态。要明确将display样式属性更改为block,请使用.css

$('.' + service).css("display", "block");

答案 1 :(得分:0)

尝试fadeIn()和fadeOut()

var service=$("#service").val();
$("."+service).fadeIn();