• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Implementacja licznika w JS

Object Storage Arubacloud
0 głosów
1,166 wizyt
pytanie zadane 12 listopada 2016 w JavaScript przez Dominik Kapek Nowicjusz (240 p.)
zamknięte 12 listopada 2016 przez Dominik Kapek

Witam, mam problem z JS:

function licznik(){
	document.getElementById("js").innerHTML='<input type="text" id="liczba1" />' + '  Podaj liczbe, od ktorej mam zaczac liczyc';
    document.getElementById("formularz").innerHTML='<input type="text" id="liczba2" />' + '  Podaj liczbe, na ktorej mam skonczyc';
    document.getElementById("potwierdz").innerHTML='<input type="submit" value="wartość" onclick="odlicz()"/>';
}
function odlicz(){
var liczba1 = document.getElementById("liczba1").value/1;
var liczba2 = document.getElementById("liczba2").value/1;
var start = liczba1;
var koniec = liczba2;
for (var i = start;i<=koniec;i++){
start++
document.getElementById("wynik").innerHTML='<div class="nwm">' + start+'</div> <br />';
}
}

Skrypt ma wyglądać następująco - uzytkownik kilka przycisk na stronie, podaje dwie liczby i program odlicza od pewnej liczby do drugiej liczby. Problem jest taki że za każdym wykonaniem pętli zawartość diva się nadpisuje, w jaki sposób mogę rozwiązać ten problem?

 

komentarz zamknięcia: Rozwiązane

1 odpowiedź

0 głosów
odpowiedź 12 listopada 2016 przez niezalogowany
wybrane 12 listopada 2016 przez Dominik Kapek
 
Najlepsza
  1. Pobierz tekst z wyniku
  2. Doklej na jego końcu kolejną liczbę
  3. Uaktualnij wynik
komentarz 12 listopada 2016 przez Dominik Kapek Nowicjusz (240 p.)

Możesz mi wyjaśnić, jak zamknąć to doklejanie w pętli for? 

var liczba1 = document.getElementById("liczba1").value/1;
var liczba2 = document.getElementById("liczba2").value/1;
for (var i = liczba1;i<=liczba2;i++){
	var kappa = liczba1+1;
var liczba = liczba1 + ' '+ kappa;
document.getElementById("wynik").innerHTML=liczba;

To działa, tylko nie mam pojęcia w jaki sposób mam podoklejać więcej liczb, póki co wyświetlaja sie 2,

 

komentarz 12 listopada 2016 przez niezalogowany

Na początek trochę bardziej przejrzysty ten kod wypadałoby uczynić, wrzuć element z id wynik do zmiennej

var wynik = document.getElementById("wynik");

Dalej w pętli for, pobierasz to co jest w wynik

var nowyWynik = wynik.textContent;

Doklejasz kolejną liczbę

nowyWynik = nowyWynik + "  " + kolejnaLiczba;
// lub krócej 
nowyWynik += "  " + kolejnaLiczba;

I zapisujesz zmienną text do wynik

wynik.textContent = nowyWynik;

 

Pokombinuj trochę żeby pozbyć się z tej implementacji zmiennej na nowy wynik - pozwoli to skrócić kod do jednej linijki, i nadal będzie on czytelny.

komentarz 12 listopada 2016 przez Kfiotek Początkujący (370 p.)

Problem polega na tym, ze do diva chciałeś wpisywać bezpośrednia wynik z pętli w ten sposób z każdym przejściem pętli for nadpisując go.

Działający, prosty skrypt do tego moze wyglądać tak: 

 <script type="text/javascript">
        function odlicz(){
        var liczba1 = document.getElementById("liczba1").value;
        var liczba2 = document.getElementById("liczba2").value;
        var licznik = "";

        for (i = liczba1;i<=liczba2;i++){
        licznik=licznik+i+" ";
        document.getElementById("wynik").innerHTML=licznik;
        }
      }
        </script>



 

komentarz 12 listopada 2016 przez Dominik Kapek Nowicjusz (240 p.)
Dziękuję za pomoc.

Pozdrawiam

Podobne pytania

0 głosów
2 odpowiedzi 533 wizyt
0 głosów
0 odpowiedzi 91 wizyt
pytanie zadane 19 listopada 2023 w C i C++ przez Kamil bachan Nowicjusz (120 p.)
0 głosów
1 odpowiedź 267 wizyt
pytanie zadane 5 grudnia 2023 w PHP przez niezalogowany

92,617 zapytań

141,466 odpowiedzi

319,783 komentarzy

61,999 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...