在javascript中访问html表中的文本字段

时间:2018-06-01 01:43:00

标签: javascript html html-table

我想在javascript中访问放置在动态表行内的文本。

我的表结构: -

<BODY>

<INPUT type="button" value="Add Row" onclick="addRow('dataTable')" />

<INPUT type="button" value="Delete Row" onclick="deleteRow('dataTable')" />

<TABLE id="dataTable" width="650px" border="2">
    <TR >
        <TD><INPUT type="checkbox" name="chk[]" /></TD>
        <TD ><INPUT type="text" name="txt[]" /></TD>
        <TD>
            <INPUT type="text" name="time[]" />                         
        </TD>

    </TR>
</TABLE>
</BR>
</BR>
<INPUT type = "button" value = "Submit" onclick = "myFunction()"></BODY>

- 感谢

3 个答案:

答案 0 :(得分:0)

你有指定行的id吗?如果你没有想要更改文本的行上的地方ID,并用javascript“捕获”它。函数名为var a = document.getElementById('ID_OF_SAMPLE_ROW')。值和文本存储在变量a中。必须在单击或类似的东西上调用此函数,因此您必须指定何时读取以及从哪一行开始。

答案 1 :(得分:0)

如果你想在表格中获得整个输入值,你可以这样做。

var a = document.getElementById("dataTable").getElementsByTagName("input");

所以var a变成了一个数组,里面是你想要获取值的元素,只需使用循环。

var e = a.length; // get how many input inside the table
for(x=0;x<e;x++){
    console.log(a[x].name+" the value inside is  "+a[x].value);
}

答案 2 :(得分:0)

只需使用 .getElementsByName() 抓取相关元素,然后返回.value。您可以使用.checked查看是否选中了复选框。

请注意,.getElementsByName()会返回 NodeList 对象集合,因此您需要使用[0]获取第一个结果。

这可以在以下内容中看到:

function myFunction() {
  let chk = document.getElementsByName('chk[]')[0].checked;
  let txt = document.getElementsByName('txt[]')[0].value;
  let time = document.getElementsByName('time[]')[0].value;
  
  console.log("Checkbox checked?:", chk);
  console.log("Text:", txt);
  console.log("Time:", time);
}
<BODY>
  <INPUT type="button" value="Add Row" onclick="addRow('dataTable')" />
  <INPUT type="button" value="Delete Row" onclick="deleteRow('dataTable')" />
  <TABLE id="dataTable" width="650px" border="2">
    <TR>
      <TD>
        <INPUT type="checkbox" name="chk[]" />
      </TD>
      <TD>
        <INPUT type="text" name="txt[]" />
      </TD>
      <TD>
        <INPUT type="text" name="time[]" />
      </TD>
    </TR>
  </TABLE>
  <BR />
  <BR />
  <INPUT type="button" value="Submit" onclick="myFunction()" />
</BODY>

请注意,您的最终<input>错过了结束/,而您的</br>代码应为<br />。这些已在上面的例子中修复。