javascript - 如何将表格行值放入 JavaScript 中的文本字段..?
问题描述
我使用此代码创建一个表,
<table class="table table-green table-hover" id="tblk"></table>
当我将数据添加到表中时,我使用这个 JavaScrip 函数(用于按钮)添加行,
function addRow() {
var custid = document.getElementById('InputCusomerID').value
var custname = document.getElementById('InputCusomerName').value
var itemid = document.getElementById('InputItemID').value
var table = document.getElementById('tblk')
var row = table.insertRow(0)
var cell1 = row.insertCell(0)
var cell2 = row.insertCell(1)
var cell3 = row.insertCell(2)
cell1.innerHTML = custid
cell2.innerHTML = custname
cell3.innerHTML = itemid
}
当我单击表格行时,我需要在输入文本字段中获取表格行值
这是我的 JavaScrip 函数,用于获取表行的值到我的文本字段中..,
var table = document.getElementById('tblk'),
rIndex
for (var i = 1; i < table.rows.length; i++) {
table.rows[i].onclick = function () {
document.getElementById('InputCusomerID').value = this.cells[0].innerHTML
document.getElementById('InputCusomerName').value = this.cells[1].innerHTML
document.getElementById('InputItemID').value = this.cells[2].innerHTML
}
}
但是我的代码不起作用我无法将表格行值放入我的文本字段中。你能帮我解决这个问题吗..?非常感谢你..!
function addRow() {
var custid = document.getElementById('InputCusomerID').value
var custname = document.getElementById('InputCusomerName').value
var itemid = document.getElementById('InputItemID').value
var table = document.getElementById('tblk')
var row = table.insertRow(0)
var cell1 = row.insertCell(0)
var cell2 = row.insertCell(1)
var cell3 = row.insertCell(2)
cell1.innerHTML = custid
cell2.innerHTML = custname
cell3.innerHTML = itemid
}
var table = document.getElementById('tblk'),
rIndex
for (var i = 1; i < table.rows.length; i++) {
table.rows[i].onclick = function() {
document.getElementById('InputCusomerID').value = this.cells[0].innerHTML
document.getElementById('InputCusomerName').value = this.cells[1].innerHTML
document.getElementById('InputItemID').value = this.cells[2].innerHTML
}
}
<table class="table table-green table-hover" id="tblk"></table>
解决方案
我不确切知道您要做什么,但它不起作用,因为您的点击侦听器在您的表格被填充之前被调用。看我的代码。
function addRow() {
var custid = document.getElementById('InputCusomerID').value
var custname = document.getElementById('InputCusomerName').value
var itemid = document.getElementById('InputItemID').value
var table = document.getElementById('tblk')
var row = table.insertRow(0)
var cell1 = row.insertCell(0)
var cell2 = row.insertCell(1)
var cell3 = row.insertCell(2)
cell1.innerHTML = custid
cell2.innerHTML = custname
cell3.innerHTML = itemid
setListeners();
}
var table = document.getElementById('tblk'),
rIndex;
function setListeners() {
for (var i = 0; i < table.rows.length; i++) {
table.rows[i].addEventListener('click', function (e) {
console.log(e.target);
document.getElementById('InputCusomerID').value = "result: " + this.cells[0].innerHTML
document.getElementById('InputCusomerName').value = "result: " + this.cells[1].innerHTML
document.getElementById('InputItemID').value = "result: " + this.cells[2].innerHTML
});
}
}
addRow();
<input type="text" id="InputCusomerID" value="a" />
<input type="text" id="InputCusomerName" value="b" />
<input type="text" id="InputItemID" value="c" />
<table class="table table-green table-hover" id="tblk"></table>
推荐阅读
- c# - How to Start and Fire a Command
- windows - How to resolve re-login to Remote Desktop Client with Remmina?
- javascript - 使用 getJson 解析树
- c# - 配置 StructureMap 以查找代理类的实现
- spring - 值变化时如何通过 SSE 发送 int 值...(Spring Boot)
- java - 当我们退格删除最后一个字符时,TextWatcher 覆盖未调用。我怎么知道最后一个字符是否被删除?
- mysql - MyBatis 'or' 标准
- asp.net-core - JsonPatchDocument is null after migration to .Net Core 3
- javascript - NodeJS same results for two different requests
- python - 测量延迟循环的执行时间时结果不一致