当前位置: 首页 > 知识库问答 >
问题:

JQUERY在拖动新项目后重新计算总和

马坚白
2023-03-14

我正在尝试计算在右列中拖动的元素的总数。这是可行的,但它只是计算该列中的两个默认元素。如果我拖动新项目,总数保持不变。我做了这个小提琴:https://jsfidle.net/ehkgcnyp/

$( function() {
$( "#sortable1, #sortable2" ).sortable({
  connectWith: ".connectedSortable"
}).disableSelection();

// Calculate badges
var sum = 0.0;
$('#sortable2 .badge-pill').each(function() {
    sum += parseFloat($(this).text());
});
//alert(sum);
$('#getTotal').click(function() {
  $('#grandTotal').html(sum);
});
});

我如何考虑新项目?

谢谢!

共有1个答案

郭俊拔
2023-03-14

问题是当页面被加载时计算结果,而不是当你点击按钮时计算结果。

我将您的代码修改为:

 function sum() {
    var sum = 0.0;
    $('#sortable2 .badge-pill').each(function() {
      sum += parseFloat($(this).text());
    });
    return sum;
  }

  //alert(sum);
  $('#getTotal').click(function() {
    $('#grandTotal').html(sum());
  });

演示

null

$(function() {
  $("#sortable1, #sortable2").sortable({
    connectWith: ".connectedSortable"
  }).disableSelection();

  // Calculate badges
  function sum() {
    var sum = 0.0;
    $('#sortable2 .badge-pill').each(function() {
      sum += parseFloat($(this).text());
    });
    return sum;
  }

  //alert(sum);
  $('#getTotal').click(function() {
    $('#grandTotal').html(sum());
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<link href="https://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" rel="stylesheet"/>

<div class="container">
  <div class="row">
    <div class="col-sm-6">
      <ul id="sortable1" class="connectedSortable list-group">
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 1 <span class="badge badge-primary badge-pill">12</span></li>
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 2 <span class="badge badge-primary badge-pill">12</span></li>
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 3 <span class="badge badge-primary badge-pill">12</span></li>
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 4 <span class="badge badge-primary badge-pill">12</span></li>
      </ul>
    </div>
    <div class="col-sm-6">
      <ul id="sortable2" class="connectedSortable list-group">
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Drag items here</li>
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 4 <span class="badge badge-primary badge-pill">12</span></li>
        <li class="ui-state-default list-group-item d-flex justify-content-between align-items-center">Item 5 <span class="badge badge-primary badge-pill">12</span></li>
      </ul>
    </div>
  </div>
  <div class="row mt-5">
    <div class="col-sm-6 offset-sm-6">
      <div class="d-flex justify-content-between">
        <button id="getTotal" type="button" name="button" class="calculate btn btn-primary btn-lg">Calculate</button>
        <h2 id="grandTotal">0</h2>
      </div>

    </div>
  </div>
</div>
 类似资料:
  • 问题内容: 我的日食没有启动,因为我的计算机有点死机了,所以我不得不强制重新启动它。当我不得不重新启动时,Eclipse是打开的,我相信这很可能是原因。我不知道该如何解决。每当我尝试打开它时,它都会告诉我检查工作区中的.log文件,并显示: http://paste.strictfp.com/26579 而且我不知道如何解决它。请帮忙? 问题答案: 您缺少 第125行的 类,您必须重新安装才能解决

  • 我希望我的UpdateItem函数将新值添加到上一个值中,但我不知道如何使用进行计算并访问要添加到新值中的当前值。 这是我的工作功能,我想做的事情包括在评论中。我该怎么做? 下面是我测试它的方法:

  • 问题内容: 我有一个问题,我通过沿行轴串联(垂直堆叠)来生成熊猫数据框。 每个组成数据帧都有一个自动生成的索引(升序编号)。 串联后,我的索引被搞砸了:它的计数最多为n(其中n是相应数据帧的shape [0]),并在下一个数据帧从零重新开始。 我正在尝试“根据给定的当前顺序重新计算索引”或“重新索引”(或者我认为)。事实证明,这似乎并没有在做。 这是我尝试做的事情: 它失败并显示“无法从重复的轴重

  • 我有一个带有CardViews的RecyclerView列表,它运行良好。当用户在名为ActActivity的输入UI上输入数据时,创建CardViews。当用户稍后单击CardView以编辑原始数据时,onItemClick方法使用捕获适配器中正确CardView项位置的start方法再次启动ActActivity。 当用户单击UI上的Save按钮以保存编辑的数据时,ActActivity UI

  • 创建任何新的 Android 项目后,Eclipse 会自动创建一个“appcompat_v7”项目,而 /src 下没有任何文件。我不知道Eclipse是如何或为什么创建这个项目的。我也得到了一个奇怪的错误。 正如你看到的AndroidManifest。项目中存在xml! EDIT1:清理项目后,奇怪的错误消失了,但我仍然想知道为什么创建appcompat_v7。 EDIT2:我还注意到Ecli

  • 我在片段的底部有一个水平图像滑块。片段的顶部显示了一些细节。一旦用户点击底部的图像,想法是从图像滑块中删除该图像,并在片段中显示其信息。现在,信息显示出来,但图像不会从中删除。下面是我在最外层布局的中编码的内容。我试过了所有我能找到的相关答案,但都没有奏效。它们都在代码里。请让我知道我做错了什么或者错过了什么。 适配器的完整代码 }