javascript - jQuery - 在当前行中按类选择元素

标签 javascript php jquery mysql html

我正在生成一个包含数据库中的值的表,每列的总计显示在表的末尾。 我想让用户可以选择删除他们不需要的行,并相应地进行总更改。

由于表单将被提交,我已经添加了隐藏的输入元素。我希望能够获取要删除的行中的列的值,并将其从总计中减去,然后显示新的总计。

我认为最好的方法是为每列指定一个类名称,并为特定行获取该类的值,因为它正在被删除。

这是我的表结构

    <tbody>';
for($i=0;$i<count($alto);$i++){
echo' <tr>
      <td>'.$key[$i].'</td>
      <td>'.$talk[0][$i].'<input type="hidden" class="bate" value="'.$talk[0][$i].'" name="0'.$key[$i].'"/></td>
      <td>'.$talk[1][$i].'<input type="hidden" class="vito" value="'.$talk[1][$i].'" name="1'.$key[$i].'"/></td>
      <td>'.$talk[2][$i].'<input type="hidden" class="hist" value="'.$talk[2][$i].'" name="2'.$key[$i].'"/></td>
      <td><button class="delete" type="button">Delete</button><td>
      </tr>';
}
echo '</tbody>

根据我对 jquery 的有限知识,我认为我需要这样的东西:

var exp = $(this).val('.vito');

可能我遇到了遍历问题,我需要在某处添加 .parents() 标记,但我不确定。

最佳答案

创建函数calculate_total()来计算表总计并在删除行后调用它:

function calculate_total(){
    var bate_total, vito_total, hist_total = 0;

    $("table").find('tr').each(function(){
        bate_total += parseInt( $(this).find('.bate').val() );
        vito_total += parseInt( $(this).find('.vito').val() );
        hist_total += parseInt( $(this).find('.hist').val() );
    });

    //Here you can assign the new totals to the columns that contain totals values
}

希望这有帮助。

关于javascript - jQuery - 在当前行中按类选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33599467/

相关文章:

javascript - 当用户将数据输入表单时要知道什么事件?

javascript - 如何使 ember 组件从服务器获取数据。将 AJAX 调用放在组件内部似乎不是处理此问题的好习惯

php - 我的 Imagick 代码似乎从未调整大小,但仍然产生清晰的图像

PHP 函数中的 JavaScript jQuery

javascript - .error() jquery 函数中的详细错误消息

javascript - 我的土地面积计算器应用程序的逻辑

javascript - JS 输入 onClick 未定义

php - 如何计算两个时间戳之间午夜前后的小时数

javascript - 两个变量声明之间的区别

javascript - 简化此代码 :