当它们都具有相同的类名时,将信息附加到单独的div

时间:2015-07-27 20:16:27

标签: javascript loopingselector

我有一堆具有相同类名的div。我遍历一些信息,将每个信息放入div中。我想将它们添加到单独的div中,但它们都具有相同的名称这一事实阻碍了我进入这个过程。它不是将它附加到当前模态,而是将所有信息附加到具有该类名的所有div。我怎么能绕过这个?

3 个答案:

答案 0 :(得分:0)

你可以使用JQuery"每个"循环。

public void Apply(EntitySet entitySet, DbModel model)
{
    Type type = TypeUtils.FindType(entitySet.ElementType.Name);

    if (type != null)
    {
        if (typeof(ILookupValue).IsAssignableFrom(type)) { //make changes here; }
    }
}

答案 1 :(得分:0)

你可以像Gaurav说的那样循环。如果您知道数据将与div的顺序匹配,这将很好地工作。如果你想把项目放在特定的位置(AKA数据不是以与div相同的顺序出现),如果jQuery是一个选项(你没有安装),你可以使用jQuery's eq() selector。这样做,您可以选择(从jQuery的API文档)选择第三个td:

<table border="1">
  <tr><td>TD #0</td><td>TD #1</td><td>TD #2</td></tr>
  <tr><td>TD #3</td><td>TD #4</td><td>TD #5</td></tr>
  <tr><td>TD #6</td><td>TD #7</td><td>TD #8</td></tr>
</table>

<script>
$( "td:eq( 2 )" ).css( "color", "red" );
</script>

话虽如此,如果你能够,并且它有意义,我会建议明确地识别你的div。根据定位编写将某些数据与DOM中的特定元素匹配的JavaScript很容易出错 - 特别是如果有人跟着你去处理代码并且不知道这种可能的“魔法”。

答案 2 :(得分:0)

$outer = document.getElementsByClassName('outer');

for(var i = 0; i < $outer.length; i++) {
    $outer[i].onclick = function () {
        alert();
    }
}

这样就可以了。您需要遍历所有类并分别应用操作。