【问题标题】:How to get the particular div of a table?如何获取表格的特定 div?
【发布时间】:2013-07-09 10:17:44
【问题描述】:

我有一个如下表,它有 9 行。从第二行开始,行内容的格式相同。

我的要求是我必须遍历第二行到最后一行,并且在每一行中我应该能够为第三个 div 设置文本 (<div class="homeLeftPaneText">want to set the text here </div>)

<table id="__table1-table" >
   <tbody>
      <tr role="row" >
         <th aria-owns="__column1" aria-labelledby="__column1" style=""></th>
     </tr>

      <tr id="__table1-rows-row0" class="">
         <td id="__table1-rows-row0-col0" role="gridcell" aria-labelledby="__table1-ariadesc __column1 __html1-col0-row0" >
            <div >
               <div class="homeLeftPaneRow" data-sap-ui-preserve="__html1-col0-row0" id="__html1-col0-row0">
                  <div class="homeLeftPaneIcon homeLeftPaneStartIcon"> </div>
                  <div class="homeLeftPaneText"> Getting Started</div>
                  <div class="homeLeftPaneText">want to set the text here </div>
               </div>
            </div>
         </td>
      </tr>

    <tr >
        //same format as  in __table1-rows-row0
    </tr>

   <tr id="__table1-rows-row4" >

   </tr>
   <tr id="__table1-rows-row4" >
          //same format as  in __table1-rows-row0            
   </tr>
   <tr id="__table1-rows-row4" >
          //same format as  in __table1-rows-row0            
   </tr>

    <tr id="__table1-rows-row4" >
          //same format as  in __table1-rows-row0            
   </tr>

    <tr id="__table1-rows-row4" >
          //same format as  in __table1-rows-row0            
   </tr>

    <tr id="__table1-rows-row4" >
          //same format as  in __table1-rows-row0            
   </tr>
   </tbody>
</table>

【问题讨论】:

  • 你不能有双重身份证!您有许多行的相同 id。所以你想用 div 标签设置文本还是只设置文本?
  • 使用类如 class="__table1-rows-row4" 而不是 ids

标签: javascript html html-table row


【解决方案1】:

这里的一个问题是没有两个 DOM 元素应该有相同的 id。改用类。

您想要做的是,在为所有这些表行分配适当的类之后,使用 jQuery 获取该类的每个实例,找到您想要的 div(您需要为该组 div 分配一个唯一的类),然后修改它。

所以它看起来像

$(".__table1-rows-row4").find(".modifythis").html("new text here");

将适当的类附加到需要更改的 div 后

【讨论】:

    【解决方案2】:

    如果您只是修改该 div 并且所有这些 div 的内容都相同,您可以向该 div 添加一个类,例如“setTextHere”,然后将文本修改为:

    $(".setTextHere").html("New Text");
    

    如果这些第三个 div 中的每一个的文本都不同,那么您将必须找到相应的父元素。在这个例子中,N 是行数。

    $("#__table1-rows-rowN").find(".setTextHere").html("Text for Row N");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-09
      • 1970-01-01
      相关资源
      最近更新 更多