this.parentNode.rowIndex
时间: 2023-09-27 10:10:31 浏览: 57
this.parentNode.rowIndex 是一个用于获取当前元素所在行的索引值的属性。其中 this 指向当前执行上下文中的对象,而 this.parentNode 指向当前元素的父元素节点,通常是一个 HTML 表格中的 tr 元素。rowIndex 属性返回当前 tr 元素在其父元素(即 tbody、table 或 tfoot 元素)的子元素列表中的索引值,索引值从 0 开始计算。如果当前元素不在一个表格中,或者没有父元素,则 rowIndex 属性会返回 -1。
相关问题
write.push( ' <tr><td><input type="Checkbox" class="myCheck" id="' + i + '" value=" ' + i + ' "></td>' + ' <td>' + (i + 1) + '</td>' + ' <td>' + student[i].number + '</td>' + ' <td>' + student[i].name + '</td>' + ' <td>' + student[i].college + '</td>' + ' <td>' + student[i].major + '</td>' + ' <td>' + student[i].grade + '</td>' + ' <td>' + student[i].cla + '</td>' + ' <td>' + student[i].age + '</td>' + ' <td><input type="button" class="changeButton" value="修改" onclick="changeStudent(this.parentNode.rowIndex)"></td></tr>');
这段代码是一个 JavaScript 数组的 push() 方法,用于向数组中添加一条 HTML 表格的行数据。具体来说,这段代码会向名为 write 的数组中添加一条字符串,该字符串包含了一条 HTML 表格的行数据,包括一个复选框、学生信息以及一个修改按钮。具体解释如下:
- `write.push(`:表示将下面的字符串添加到 write 数组中。
- `' <tr><td><input type="Checkbox" class="myCheck" id="' + i + '" value=" ' + i + ' "></td>' +`:表示添加一行表格行,其中包括一个复选框。
- `' <td>' + (i + 1) + '</td>' +`:表示添加一列,显示该行的编号(即 i+1)。
- `' <td>' + student[i].number + '</td>' +`:表示添加一列,显示学生的学号。
- `' <td>' + student[i].name + '</td>' +`:表示添加一列,显示学生的姓名。
- `' <td>' + student[i].college + '</td>' +`:表示添加一列,显示学生的学院。
- `' <td>' + student[i].major + '</td>' +`:表示添加一列,显示学生的专业。
- `' <td>' + student[i].grade + '</td>' +`:表示添加一列,显示学生的年级。
- `' <td>' + student[i].cla + '</td>' +`:表示添加一列,显示学生的班级。
- `' <td>' + student[i].age + '</td>' +`:表示添加一列,显示学生的年龄。
- `' <td><input type="button" class="changeButton" value="修改" onclick="changeStudent(this.parentNode.rowIndex)"></td></tr>'`:表示添加一列,包括一个修改按钮,点击该按钮会触发 changeStudent() 函数,同时传入该行的 rowIndex 属性作为参数。
最终,write 数组中存储的就是一组 HTML 表格的行数据,可以通过将这些字符串连接起来,再使用 innerHTML 将其插入到页面中的表格中,以显示学生信息。
function moveUp(obj) { var tr = obj.parentNode.parentNode; var tbody = tr.parentNode; if (tr.rowIndex === 1) { // 如果当前行是第一行,将其移动到最后一行 tbody.insertBefore(tr, tbody.lastChild.nextSibling); } 类似这段代码的删除代码
如果想要在这段代码中添加删除功能,可以使用以下代码:
```
function deleteRow(obj) {
var tr = obj.parentNode.parentNode;
var tbody = tr.parentNode;
tbody.removeChild(tr);
}
```
这个函数将删除传递给它的行。使用这个函数,可以将一个删除按钮添加到每一行中:
```
<tr>
<td>...</td>
<td>...</td>
<td><button onclick="deleteRow(this)">删除</button></td>
</tr>
```
这个按钮将调用deleteRow函数,并将当前行作为参数传递给它。当函数被调用时,它将删除这一行。
阅读全文