如何从DataTables的单元格中获取Textfield值?

时间:2019-05-05 16:50:52

标签: jquery datatables

我想从数据表的单元格中获取文本字段值。 我开始考虑可以将其作为一个简单的单元格接收,但事实并非如此。

$("#orderTable tbody").on('click','.confirmBt',function(){
    let row = $(this).closest('tr');
    console.log(row.find('td:eq(7)').text());
});

在这段代码中,我只想打印texfield的值,所以我尝试了 .text(),但未打印任何内容。 任何帮助或想法都将受到欢迎,

感谢帮助:)

1 个答案:

答案 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>