You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript将textarea输入字符串拆分后按序填入HTML表格Value列

代码修改方案

1. 修正HTML重复ID问题

你当前代码中textarea和表格Value列的表头都使用了id="value",会导致DOM获取元素异常,删除表格表头的id='value'属性即可:

<!-- 修改前 -->
<th id='value'>Value</th>
<!-- 修改后 -->
<th>Value</th>

可选优化:给现有表格增加唯一ID,避免后续页面新增表格时逻辑冲突,修改table标签为:

<table id="flightTable">

2. 替换JS逻辑

你原有的JS逻辑是动态生成新表格,不符合填充现有表格的需求,替换getValue函数为以下代码:

function getValue() {
  // 读取textarea输入内容并去除首尾空格
  const inputContent = document.getElementById("value").value.trim();
  // 按空格分割为数组,自动兼容多个连续空格的场景
  const valueList = inputContent.split(/\s+/);
  // 分割结果显示到demo区域
  document.getElementById("demo").innerText = valueList.join("、");

  // 获取表格所有行,如果你加了表格ID就用 document.getElementById("flightTable").querySelectorAll('tr')
  const tableRows = document.querySelector("table").querySelectorAll("tr");

  // 遍历表格行,跳过第一行表头,从第二行开始填充
  for (let rowIndex = 1; rowIndex < tableRows.length; rowIndex++) {
    // 获取当前行的Value列(第四列,索引为3)
    const valueCell = tableRows[rowIndex].querySelectorAll("td")[3];
    // 数组有对应值就填充,没有就留空
    valueCell.innerText = valueList[rowIndex - 1] || "";
  }
}

功能验证

输入字符串vivek purohit abc xyz提交后,会自动按顺序将四个值填入Value列的第1到第4行,剩余行自动留空。


内容的提问来源于stack exchange,提问作者Vivek Purohit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 19:54:10