Quiero obtener los datos de cada elemento arrastrado una vez que se haya soltado y agregarlo a una matriz. Soy relativamente nuevo en Javascript, así que no estoy seguro de cómo puedo lograr esto. Quiero que se agreguen 'datos' a la matriz 'total' cada vez que se suelta un elemento, esto es lo que tengo hasta ahora:
function dropHandler(ev) { ev.preventDefault(); const totalBalance = []; var data = ev.dataTransfer.getData("text"); var dropTarget = document.getElementById('drop-target'); ev.target.appendChild(document.getElementById(data)); // changes colour of drop target when dragged over ev.currentTarget.style.background = "black"; totalText = document.getElementById('totalText'); totalText.innerHTML = totalBalance }Con la lista que ha creado, simplemente puede insertar nuevos valores con push(value) , esto inserta el valor dado en la lista.
let totalBalance = []; // Table to track all of the balances. function dropHandler(ev) { ev.preventDefault(); var data = ev.dataTransfer.getData("text"); var dropTarget = document.getElementById('drop-target'); ev.target.appendChild(document.getElementById(data)); // changes colour of drop target when dragged over ev.currentTarget.style.background = "black"; // Insert this data into our total balance's list. totalBalance.push(data); totalText = document.getElementById('totalText'); totalText.innerHTML = totalBalance } La lista totalBalance se define antes de la definición de la función, por lo que no se sobrescribe cada vez que se suelta algo.