【问题标题】:How to get all Div within a table using javascript如何使用javascript获取表中的所有Div
【发布时间】:2017-05-27 21:18:54
【问题描述】:

请告诉我如何使用 LANG="1" 获取特定表的所有 DIV 的数组 Javascript

表结构是这样的:

  < table >
 < tr > < td > < div id=1 lang="1" > some metter < /div > < /td >< /tr >
 < tr > < td > < div id=2 lang="2" > some metter < /div > < /td >< /tr >
 < tr > < td > < div id=3 lang="1" > some metter < /div > < /td >< /tr >
 < tr > < td > < div id=4 lang="1" > some metter < /div > < /td >< /tr >
< /table >

【问题讨论】:

    标签: javascript asp.net html-table


    【解决方案1】:

    你可以给table一个唯一的id,然后使用getElementsByTagName函数:

    var table = document.getElementById('tableId');
    if (table == null) return;
    var divs = table.getElementsByTagName('div');
    for (var i = 0; i < divs.length; i++) {
        var div = divs[i];
        if (div.lang == '1') {
            alert(div);
        }
    }
    

    【讨论】:

    • 非常感谢,亲爱的...大多数everybuddy都给出了正确的答案,但我觉得你的答案非常简单而且非常好...
    【解决方案2】:

    ol'plain javascript 发生了什么?

    var div = document.getElementsByTagName('table')[0].getElementsByTagName('div');

    编辑:忘记最后一部分

    var divLang = []; 
    for(a in divs){
      ((divs[a].getAttribute('lang')) ==1)? divLang.push(divs[a]) : false;
    }
    

    【讨论】:

      【解决方案3】:

      如果您使用 PrototypejQueryClosure 等库,这是最简单的,它们提供了几乎完整的 CSS3 selectors 集。

      使用原型,它看起来像这样:

      var table = /* ...an expression finding the table...*/;
      var divs = table.select('div[lang=1]');
      

      例如,如果你给你的表一个“myTable”的id

      var table = $('myTable');
      var divs = table.select('div[lang=1]');
      

      或者只是

      var divs = $('myTable').select('div[lang=1]');
      

      使用 jQuery,如果您将 id 提供给您的表,它是:

      var divs = $('#myTable div[lang=1]');
      

      (是的,jQuery 和 Prototype 都使用$,但用于不同的东西。)

      【讨论】:

      • 给我错误:table.select 不是一个函数(这里的 table 是 var table"
      【解决方案4】:

      试试

      $('table[lang="1"]');
      

      或者给他们分配类让我们说“divclass”并选择他们

      $('.divclass[lang="1"]');
      

      这是 jQuery 语法,因为其他人在原型中发布过

      【讨论】:

      • 这给了他 all 表中的 all div,并且没有按要求按lang 过滤。
      • @T.J.克劳德对不起,我在这里没有看到这个要求,我会更新我的答案
      猜你喜欢
      • 2019-01-08
      • 2013-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多