我有以下代码,想要更改输入的值,当我编辑 TR 时,值会自动更改。
$('.change').change(function() {
var element = $(this).parent();
console.log('get result: ' + $(this).parent().find('.resultt').val());
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tbody>
<form action='' method='POST'>
<tr>
<td> ASDADAS </td>
<td> 2 </td>
<td> 2017-08-21 </td>
<td class='money'> 130.00 </td>
<td> <input type='text' class='change' style='width: 30%;' value='0.033%' /> </td>
<td class='resultt'> 130.04 </td>
<td class='parcial'> 0.04 </td>
</tr>
</form>
<form action='' method='POST'>
<tr>
<td> XXFDFD </td>
<td> 1 </td>
<td> 2017-08-20 </td>
<td class='money'> 121.34 </td>
<td> <input type='text' class='change' style='width: 30%;' value='0.033%' /> </td>
<td class='resultt'> 120.36 </td>
<td class='parcial'> 0.34 </td>
</tr>
</form>
</tbody>
&#13;
我尝试使用该脚本来查看是否可以获得 CLASS 的值,以便我可以编辑它。但我没有成功。
答案 0 :(得分:0)
输入的父级是单元格,而不是行。尝试两次调用父级,或者更好地尝试使用.closest("tr")
。
答案 1 :(得分:0)
您需要使用$(this).closest('tr').find('.resultt').text()
td
会向您text()
而不是val()
$('.change').change(function() {
var element = $(this).parent();
console.log('get result: ' + $(this).closest('tr').find('.resultt').text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tbody>
<form action='' method='POST'>
<tr>
<td> ASDADAS </td>
<td> 2 </td>
<td> 2017-08-21 </td>
<td class='money'> 130.00 </td>
<td> <input type='text' class='change' style='width: 30%;' value='0.033%' /> </td>
<td class='resultt'> 130.04 </td>
<td class='parcial'> 0.04 </td>
</tr>
</form>
<form action='' method='POST'>
<tr>
<td> XXFDFD </td>
<td> 1 </td>
<td> 2017-08-20 </td>
<td class='money'> 121.34 </td>
<td> <input type='text' class='change' style='width: 30%;' value='0.033%' /> </td>
<td class='resultt'> 120.36 </td>
<td class='parcial'> 0.34 </td>
</tr>
</form>
</tbody>
<table>