如何从数字列表中逐个减去?

发布于 2024-10-08 15:38:17 字数 1266 浏览 0 评论 0原文

我想要做的就是从数字列表中减去一个数字。 例如,我在表格中包含以下数字,我想减去 4000:

<table>
<thead>
   <tr>
      <td>result</td>
      <td>start</td>
   <tr>
</thead>
<tbody>
   <tr>
      <td>0</td>
      <td>3000</td>
   </tr>
   <tr>
      <td>0</td>
      <td>3500</td>
   </tr>
   <tr>
      <td>0</td>
      <td>4000</td>
   </tr>
</tbody>
</table>

完美的结果如下所示:

<table>
<thead>
   <tr>
      <td>result</td>
      <td>start</td>
   <tr>
</thead>
   <tbody>
   <tr>
      <td>0</td>
      <td>3000</td>
   </tr>
   <tr>
      <td>2500</td>
      <td>3500</td>
   </tr>
   <tr>
      <td>4000</td>
      <td>4000</td>
   </tr>
   </tbody>
</table>

这是我已经尝试过的链接:

http://jsfiddle.net/蒂特雷梅尔/LBjVJ/9/

What I want to do is subtract from list on numbers just one number.
For example I have in a table following numbers and I want to subtract 4000:

<table>
<thead>
   <tr>
      <td>result</td>
      <td>start</td>
   <tr>
</thead>
<tbody>
   <tr>
      <td>0</td>
      <td>3000</td>
   </tr>
   <tr>
      <td>0</td>
      <td>3500</td>
   </tr>
   <tr>
      <td>0</td>
      <td>4000</td>
   </tr>
</tbody>
</table>

A perfect result would look like this:

<table>
<thead>
   <tr>
      <td>result</td>
      <td>start</td>
   <tr>
</thead>
   <tbody>
   <tr>
      <td>0</td>
      <td>3000</td>
   </tr>
   <tr>
      <td>2500</td>
      <td>3500</td>
   </tr>
   <tr>
      <td>4000</td>
      <td>4000</td>
   </tr>
   </tbody>
</table>

Here's a link what I've tried already:

http://jsfiddle.net/tiitremmel/LBjVJ/9/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

装迷糊 2024-10-15 15:38:17

这是你想要的吗? jsFiddle

编辑:新版本!

var subtract = 4000;

$('#tbl tbody tr').each(function(){
    var value = parseInt($(this).find('td:eq(1)').text());
    var $result = $(this).find('td:eq(0)');

    if(subtract >= value){
        $result.text(0);
        subtract -= value;
    }
    else if(subtract <= 0){
        $result.text(value);
    }
    else{
        $result.text(value-subtract);
        subtract -= value;
    }
});

Does this do what you want? jsFiddle

EDIT: New Version!

var subtract = 4000;

$('#tbl tbody tr').each(function(){
    var value = parseInt($(this).find('td:eq(1)').text());
    var $result = $(this).find('td:eq(0)');

    if(subtract >= value){
        $result.text(0);
        subtract -= value;
    }
    else if(subtract <= 0){
        $result.text(value);
    }
    else{
        $result.text(value-subtract);
        subtract -= value;
    }
});
习ぎ惯性依靠 2024-10-15 15:38:17

如果您想删除第一个单元格作为目标数字的行,请尝试:

var targetNumber = 4000;

// Note, better to use the ID of the table instead of 'table' here
$('table tr').each(function() {
  var tCell = $(this).find('td:first');
  if (parseInt(tCell.text()) == targetNumber) {
    $(this).remove();
  }
});

If you want to remove a row that has the first cell as your target number then try:

var targetNumber = 4000;

// Note, better to use the ID of the table instead of 'table' here
$('table tr').each(function() {
  var tCell = $(this).find('td:first');
  if (parseInt(tCell.text()) == targetNumber) {
    $(this).remove();
  }
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文