Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 处理Typescript中的表行_Javascript_Dom_Typescript - Fatal编程技术网

Javascript 处理Typescript中的表行

Javascript 处理Typescript中的表行,javascript,dom,typescript,Javascript,Dom,Typescript,我一直在尝试将JavaScript web表单转换为Typescript,但无法解决如何转换涉及表行的语句,例如: let body = document.getElementById("selectStackBody"); let rowCount = body.rows.length; let row = body.insertRow(rowCount); body.deleteRow(i); let body = <HTMLBodyElement>document.ge

我一直在尝试将JavaScript web表单转换为Typescript,但无法解决如何转换涉及表行的语句,例如:

let body = document.getElementById("selectStackBody");

let rowCount = body.rows.length;

let row = body.insertRow(rowCount);

body.deleteRow(i);
let body = <HTMLBodyElement>document.getElementById("selectStackBody");
我可以通过以下步骤了解如何获取身体:

let body = document.getElementById("selectStackBody");

let rowCount = body.rows.length;

let row = body.insertRow(rowCount);

body.deleteRow(i);
let body = <HTMLBodyElement>document.getElementById("selectStackBody");

但是我看不出如何为行获取正确的语法。

您不必在这里执行任何特定于TypeScript的操作。基本DOM语法可以为您做到这一点

如果document.getElementByIdselectStackBody提供给表体节点,则只需执行body.childNodes.length即可获得行数

类似地,要附加行,请使用DOM语法添加子节点

以下是一个示例:

const body = document.getElementById('selectStackBody')

// Total number of rows
let numberOfRows = body.childNodes.length

// Add a new row
let newRow = document.createElement('tr')
body.appendChild(newRow)

// Remove the first row
body.removeChild(body.childNodes[0])

有什么问题吗?正在抛出哪些错误?您尝试了什么?HTMLBodyElement接口没有rows属性。但是,tbody元素使用的HTMLTableSectionElement接口不支持。如果您显示试图在其上运行此代码的HTML,将更容易为您提供帮助。