webForumDet fria alternativet

rensa cellen innan nya värdet

JavaScript

5 svar · 669 visningar · startad av swingman

Medlem sedan jan. 200686 inlägg
Frågan#1

Jag har en tabell med kolumner Article, Number,Pris och Total. Total ska innehålla prissumman för artikeln. T ex artikeln Dator har ett satt pris och Number är satt till 1. Om jag klicka på en knapp Calculate, då ska det i cellen under kolumnen Total visas summan som är Pris. Skulle jag då ändra Number till 3 och klicka på Calculate, jo då ska cellen rensas och den nya summan in där. Mitt problem är att cellen inte rensas. Alltså när jag första gången fått summan till tex 3500 och sen ändra Number, så får jag den nya summan bredvid den gamla summan. Hur gör jag för att rensa fältet innan den nya summan skrivs in?

Medlem sedan juni 200032 967 inlägg
#2

Visa din kod.

Medlem sedan jan. 200686 inlägg
#3

det är ganska mycket kod och är en skol uppgift så det blir lite fel att lägga ut. Hade hoppats om det finns någon klar funktion. typ x.clear().

Medlem sedan juni 200032 967 inlägg
#4

Hur skriver du summan till fältet då?

Medlem sedan jan. 200686 inlägg
#5

okay jag lägger ut just den funktionen...

...
var summa =0; //initiera till 0 och antal till 1
    		var antal = 1;
		var totSumma =0;
		var totAntal =0;
....
var tabell = document.getElementById("pricetable");	//tabellreferens
var rader = tabell.getElementsByTagName("tr"); //Hitta rader
for (var i = 1; i < rader.length-1; i++) {	//loop för rader		

 var tabellceller = rader[i].getElementsByTagName("td");
 var nuvarandePris = tabellceller[3].firstChild.nodeValue;
 var priset = parseInt(nuvarandePris);
                       
var nuvarandeAntal = tabellceller[4].firstChild.value;
var antal = parseInt(nuvarandeAntal);
var totAntal = totAntal + antal;
            
var summa = parseInt(priset * antal);
totSumma =totSumma+summa;
var summaText = document.createTextNode(summa);
	
var summaElement = tabellceller[5];	
summaElement.appendChild(summaText);
			
	   }
Medlem sedan jan. 2003296 inlägg
#6
var summaElement = tabellceller[5];

while (summaElement.hasChildNodes()) {
	summaElement.removeChild(summaElement.firstChild);
}

summaElement.appendChild(summaText);
256 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)