我正在处理一项要求,其中需要将文本框中的数字推入数组。文本框在表格行的第二个单元格中,第三个单元格是日期选择器。
下面的代码段为我提供了所有文本字段值以及数组中的日期值。我只需要该数组的文本字段的值。请帮我解决。
var NumbersArray = $('#myTable input[type=text]').map(function() {
return this.value;
}).get();
console.log(NumbersArray);
下面的这段代码也不起作用:
var secondCellContents = [],
$('#myTable tbody tr').each(function() {
var $secondCell = $(this).children('td').eq(1).text(),
secondCellContent = $secondCell.text();
secondCellContents.push(secondCellContent);
});
console.log(secondCellContents);
答案 0 :(得分:0)
您可以对第二个单元格执行相同的操作,例如:
var secondCellContents = $('#myTable tbody tr').map(function() {
return $('td:eq(1)', this).val();
}).get();
console.log(secondCellContents);
此外,.val()
方法主要用于获取表单元素的值,例如输入,选择和文本区域,.text()
用于获取每个元素的组合文本内容。 .text()
方法返回text和CDATA节点以及元素节点的值。
答案 1 :(得分:0)
这是使其与您自己的代码一起使用的方法。
$(document).ready(function(){
var NumbersArray = $('#myTable td:nth-child(2) input[type="text"]').map(function() {
return $(this).val();
}).get();
console.log(NumbersArray);
//OR
var secondCellContents = [];
$('#myTable tbody tr').each(function () {
var $secondCell = $(this).children('td:eq(1)');
secondCellContent = $secondCell.find('input').val();
secondCellContents.push(secondCellContent);
});
console.log(secondCellContents);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='myTable'>
<tbody>
<tr>
<td>Row 1</td>
<td><input type='text' value="1" /></td>
<td></td>
</tr>
<tr>
<td>Row 2</td>
<td><input type='text' value="2" /></td>
<td></td>
</tr>
<tr>
<td>Row 3</td>
<td><input type='text' value="3" /></td>
<td></td>
</tr>
</tbody>
</table>