如何在jQuery中编辑表的所有TR的值

时间:2017-08-22 05:09:18

标签: javascript jquery html

我有以下代码,想要更改输入的值,当我编辑 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;
&#13;
&#13;

我尝试使用该脚本来查看是否可以获得 CLASS 的值,以便我可以编辑它。但我没有成功。

2 个答案:

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