我想从数据表的单元格中获取文本字段值。 我开始考虑可以将其作为一个简单的单元格接收,但事实并非如此。
$("#orderTable tbody").on('click','.confirmBt',function(){
let row = $(this).closest('tr');
console.log(row.find('td:eq(7)').text());
});
在这段代码中,我只想打印texfield的值,所以我尝试了
.text()
,但未打印任何内容。
任何帮助或想法都将受到欢迎,
感谢帮助:)
答案 0 :(得分:1)
您需要更改
console.log(row.find('td:eq(7)').text());
到
console.log(row.find('td').eq(7).text());
已更新
如果要使用输入标签获取单元格值
let cell = row.find('td').eq(7).find('input');
console.log($(cell).val());
$("#orderTable tbody").on('click','.confirmBt',function(){
let row = $(this).closest('tr');
let cell = row.find('td').eq(1).find('input');
//console.log($(cell))
console.log($(cell).val());
});
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<table id="orderTable">
<tr>
<th>Company</th>
<th>Contact</th>
<th>Confirm</th>
</tr>
<tr>
<td>Alfreds Futterkiste</td>
<td><input type='text'></td>
<td><button class='confirmBt'>Confirm</button</td>
</tr>
<tr>
<td>Centro comercial Moctezuma</td>
<td>Francisco Chang</td>
<td><button class='confirmBt'>Confirm</button</td>
</tr>
</table>
</body>
</html>