Do zrobienia mam tabele w której będą dodawane i usuwane wiersze, dodatkowo po dodaniu/usunięciu wiersza na dole tabeli ma się pojawiać wiersz w którym odbędzie się sumowanie wartości z dodanych/usuniętych wierszy.
Mój problem występuje w przypadku gdy wiersz zostanie usunięty, nie potrafię rozróżnić, który wiersz został usunięty a jest mi to potrzebne do sczytania wartości by zaktualizować sumę. Poniżej istotny fragment mojego kodu:
Kod
<script language="JavaScript">
var czy_jest=0;
var tablica_strata_mocy_eg = new Array();
$(document).ready(function() {
$('#dodajWiersz').click(function() {
if(walidacja()==true){
var liczba = $('#tabela tr').length;
var f = '<td>Transformator o mocy '+moc+'VA - '+ilosc+'szt.<br>Przyjęta stawka za kW*h - '+oplata+'zł/kW*h.<br>Praca - '+doba+'h w ciągu doby, '+rok+' dni w ciągu roku.</td>';
var f1 = '<td>Transformatory'+strata_mocy_eg.toFixed(0)+'<br>Transformatory konkurencyjne '+strata_mocy_konkurencja.toFixed(0)+'</td>';
var f2 = '<td>'+roznica_strat.toFixed(0)+'</td>';
var f3 = '<td>1 roku '+roczek.toFixed(0)+'<br>5 lat '+piec.toFixed(0)+'<br>10 lat '+dziesiec.toFixed(0)+'<br>20 lat '+dwadziescia.toFixed(0)+'</td>';
var f4 = '<td><a class="button delete" href="#">Usuń</a></td>';
var row = '<tr class="none" id="wiersz-'+liczba+'">'+f+f1+f2+f3+f4+'</tr>';
$('#tabela').find('tbody').append(row);
$('tr.none').removeClass('none').animate({'backgroundColor':'#66B04D','color':'#fff'},300,function(){
$(this).animate({'backgroundColor':'#fff','color':'#000'},300);
});
tablica_strata_mocy_eg[liczba-1]=strata_mocy_eg;
var suma_strata_mocy_eg = 0;
for (var i=0; i<liczba; i++){
suma_strata_mocy_eg = tablica_strata_mocy_eg[i] + suma_strata_mocy_eg;
}
var f20 = '<td>Suma</td>';
var f21 = '<td>Transformatory '+suma_strata_mocy_eg.toFixed(0)+'</td>';
var row_suma = '<tr>'+f20+f21+'</tr>';
if(czy_jest==0){
$('#tabela').find('tfoot').append(row_suma);
czy_jest=1;
}
else{
$('#tabela').find('tfoot tr').remove();
$('#tabela').find('tfoot').append(row_suma);
czy_jest=1;
}
showLayer('page2')
}
});
$('.delete').live('click',function() {
$(this).closest('tr').animate({'backgroundColor':'#EF3E23','color':'#fff'},300,function(){
$(this).remove();
});
});
});
</script>
var czy_jest=0;
var tablica_strata_mocy_eg = new Array();
$(document).ready(function() {
$('#dodajWiersz').click(function() {
if(walidacja()==true){
var liczba = $('#tabela tr').length;
var f = '<td>Transformator o mocy '+moc+'VA - '+ilosc+'szt.<br>Przyjęta stawka za kW*h - '+oplata+'zł/kW*h.<br>Praca - '+doba+'h w ciągu doby, '+rok+' dni w ciągu roku.</td>';
var f1 = '<td>Transformatory'+strata_mocy_eg.toFixed(0)+'<br>Transformatory konkurencyjne '+strata_mocy_konkurencja.toFixed(0)+'</td>';
var f2 = '<td>'+roznica_strat.toFixed(0)+'</td>';
var f3 = '<td>1 roku '+roczek.toFixed(0)+'<br>5 lat '+piec.toFixed(0)+'<br>10 lat '+dziesiec.toFixed(0)+'<br>20 lat '+dwadziescia.toFixed(0)+'</td>';
var f4 = '<td><a class="button delete" href="#">Usuń</a></td>';
var row = '<tr class="none" id="wiersz-'+liczba+'">'+f+f1+f2+f3+f4+'</tr>';
$('#tabela').find('tbody').append(row);
$('tr.none').removeClass('none').animate({'backgroundColor':'#66B04D','color':'#fff'},300,function(){
$(this).animate({'backgroundColor':'#fff','color':'#000'},300);
});
tablica_strata_mocy_eg[liczba-1]=strata_mocy_eg;
var suma_strata_mocy_eg = 0;
for (var i=0; i<liczba; i++){
suma_strata_mocy_eg = tablica_strata_mocy_eg[i] + suma_strata_mocy_eg;
}
var f20 = '<td>Suma</td>';
var f21 = '<td>Transformatory '+suma_strata_mocy_eg.toFixed(0)+'</td>';
var row_suma = '<tr>'+f20+f21+'</tr>';
if(czy_jest==0){
$('#tabela').find('tfoot').append(row_suma);
czy_jest=1;
}
else{
$('#tabela').find('tfoot tr').remove();
$('#tabela').find('tfoot').append(row_suma);
czy_jest=1;
}
showLayer('page2')
}
});
$('.delete').live('click',function() {
$(this).closest('tr').animate({'backgroundColor':'#EF3E23','color':'#fff'},300,function(){
$(this).remove();
});
});
});
</script>