仅使用Javascript在表的最后一行中显示按钮

时间:2017-07-28 02:55:41

标签: javascript html user-interface bootstrap-4

我有一个4列的表,最后一列包含" +"按钮。它的功能是在单击时添加其他列。但是它显示在所有行中,我希望它只显示在表的最后一行。

这是代码

  <table class="table table-responsive table-bordered" style="width:100%" id="HeightConfig">
    <tbody id="HeightConfigBody">
@if (Model != null)
{
@foreach (var data in Model.Reverse())
{
     <tr>
                         <td style="width:40%">
  <label><b>Recorded Time:</b> <input type="text" id="recordDate"  class="recordDate"   
  value="@data.recordDate.ToString("yyyy-MM-dd")" disabled></label>
                      </td>



                       <td style="width:40%">
                         <label><b>Height (CM):</b> <input type="text" id="ColumnTypeData" class="ColumnTypeData" 
                          value="@data.ColumnTypeData" ></label>
                      </td>

                      <td style="width:40%">
                           <a class="btn btn-primary btn-default" title="delete"
                            data-target="#modal-container" data-toggle="modal" data-align="center">
                            <div id="minusHeight"><i class="fa fa-minus" aria-hidden="true"></i></div>
                            </a>


     <a class="btn btn-primary btn-default" title="add"  >
                              <div id="addHeight" ><i class="fa fa-plus" aria-hidden="true"></i></div>
     </a>
                       </td>

</tr>

}
}

     </tbody>
  </table>

只是在表格中显示了for循环,因为它正在填充数据。

这是截图

enter image description here

我想要的是加号按钮只显示在表格的最后一行

1 个答案:

答案 0 :(得分:1)

在您的代码中,您将根据包含“+”按钮的模板生成行。你应该从模板中取出这部分:

<a class="btn btn-primary btn-default" title="add">
    <div id="addHeight" ><i class="fa fa-plus" aria-hidden="true"></i>
    </div>
</a>

相反,你应该:

  1. 检查/查找最新行的位置/行号/元素id的函数。这样的事情:document.getElementById("mytable").rows.length将返回表中存在的行数。但要注意索引。

  2. 将“+”按钮插入/追加到特定行的另一个函数。 This可以为您提供一些见解。

  3. 一种删除“+”按钮并重新插入的方法,因为你有“ - ”按钮可以删除表格中间的行。按钮位置也需要更新。