javascript - 在 JavaScript 中选择特定的表格单元格

标签 javascript html

我有一个像这样的 HTML:

<table id="laboral">
    <tr>
        <td><input type="text" name="start"/></td>
        <td><input type="text" name="end"/></td>
        <td><textarea name="desc"></textarea></td>
        <td><button type="button" onclick="saveValues(this);createRow('laboral')"> + </button></td>
    </tr>
</table>

我想要的是保存三个单元格中的值(2 个输入和 1 个文本区域)。

该按钮创建另一行,就像第一行一样,具有相同的输入和名称。问题是我不知道如何访问此行,我的意思是,拥有该按钮的行。

我尝试使用 this.parentNode.parentNode 但没有成功。

最佳答案

试试这个

<table id="laboral">
    <tr>
        <td><input type="text" name="start"/></td>
        <td><input type="text" name="end"/></td>
        <td><textarea name="desc"></textarea></td>
        <td><button type="button" onclick="saveValues(this)"> + </button></td>
    </tr>
</table>

 

var inputVals = [];

function saveValues(elm) {
    //         button   td         tr        tbody     table
    var table = elm.parentNode.parentNode.parentNode.parentNode;

    //  iterating through the first row cells
    for (var i = 0; i<table.rows[0].cells.length-1; i++) {
        //  the current cell
        var cell = table.rows[0].cells[i];
        //  pushing the input elm's value into the array
        inputVals.push(cell.childNodes[0].value);
        //  retrieving the pushed value
        alert(inputVals[i]);
    }
}

Fiddle example

您可以修改代码。

关于javascript - 在 JavaScript 中选择特定的表格单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19878206/

相关文章:

javascript - Ionic-side-menu 隐藏了我所有的主要内容

javascript - 如何在Javascript中用英文单词写一个整数?

列表类型圆圈的 HTML 特殊字符

javascript - 防止在禁用 js 的情况下加载页面

javascript - 将 HTML 模板打印为 PDF - Angular 2

javascript - 仅当键是字母或数字时才对 keyup 发出警报

javascript - 使用angularjs从登录服务获取后如何为特定url全局设置标题?

javascript - 清除另一个输入时清除输入类型文本

javascript - admin 和 admin/* 具有相同路由的快速路由句柄

php - 如何遍历 $_FILES?