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

JavaScrypt dziwny błąd. Odcinek drugi JavaScript'u

Object Storage Arubacloud
0 głosów
146 wizyt
pytanie zadane 5 listopada 2015 w JavaScript przez Ditrix Mądrala (5,650 p.)

Witam otóż stworzyłem całe zadanie drugie odcinka drugiego z kursu programowania w JavieScripcie. Zadanie miało polegać na podaniu dwóch liczb i wypisaniu przedziału między nimi. Ale nie mam pojęcia, czemu jak w jednym polu wpiszę wartość dwucyfrową, a w drugim polu wpiszę wartość jednocyfową to nie pokazuje się przedział liczb miedzy nimi, a tylko liczba dwucyfrowa.

<!Doctype HTML>
<html>
<head>
	<meta charset="utf-8" />
	
	<script type="text/javascript">
	
	function sprawdz()
	{
		var liczba1 = document.getElementById("pole1").value;
		var liczba2 = document.getElementById("pole2").value;
		var napis = "";

		if ((isNaN(liczba2)==true) && (isNaN(liczba1)==true)) napis = "Wprowadzone złe wartości";
		
		else if (isNaN(liczba1)==true) napis = "W lewej komórce zla wartosc";
		
		else if (isNaN(liczba2)==true)napis = "W prawej komórce zła wartość";
		
		else if (liczba1==liczba2) napis = "Takie same";
		
		else 
		{
			if (liczba1<liczba2)
			{
				for(i=liczba1; i<=liczba2; i++)
				{
					napis = napis + i + " ";
				}
			}
			
			else if (liczba1>liczba2)
			{
				for(i=liczba1; i>=liczba2; i--)
				{
					napis = napis + i + " ";
				}
			}
		}

	
	document.getElementById("wynik").innerHTML = napis;
	
	}
	
	</script>
</head>
<body>

	<input type="text"  id="pole1" /> <input type="text"  id="pole2" />
	<input type="submit" value="Sprawdz" onclick="sprawdz()"/>
	
	<div id="wynik"></div>

</body>

</html>

 

2 odpowiedzi

0 głosów
odpowiedź 5 listopada 2015 przez furas Maniak (53,800 p.)
Liczba wpisana w pole to tylko tekst zawierający jakieś cyfry.

Dodanie napisów "4" + "3" daje napis "43" a nie wartośc 7.

Trzeba najpierw tekst zamienić na wartość liczbową (liczbę całkowią czyli int)

parseInt("4") + parseInt("3")
komentarz 5 listopada 2015 przez Ditrix Mądrala (5,650 p.)
O to właśnie chodzi. O napisanie przedziału liczb między liczbą 1 i liczbą 2 lub na odwrót. Nie chce ich dodawać.
komentarz 5 listopada 2015 przez furas Maniak (53,800 p.)
Nie da się wypisać elementów przedziału między napisem "1" a napisem "2". Trzeba najpierw napis "1" zamiemić na liczbę 1 a napis "2" zamienić na liczbę 2.
komentarz 5 listopada 2015 przez Ditrix Mądrala (5,650 p.)
Może najpierw skopiuj kod do swojego edytora i odpal w przeglądarce. Wpisz w pierwszym inpucie 2, a w drugim 6 i nacisnij Sprawdź.

Potem w jednym inpucie wpisz wartość dwucyfrową, a w drugim jednocyfrową i zobaczysz w czym tkwi problem.
0 głosów
odpowiedź 6 listopada 2015 przez Wiciorny Ekspert (269,710 p.)
edycja 6 listopada 2015 przez Wiciorny

przenieś

document.getElementById("wynik").innerHTML = napis;  te linijke kodu 

document.getElementById("wynik").innerHTML = napis;

 przenies

    else  (liczba1>liczba2)
            {
                for(i=liczba1; i>=liczba2; i--)
                {
                    napis = napis + i + " ";

			  }
            }
		
		  document.getElementById("wynik").innerHTML = napis;
        }

w ten sposob masz to w srodku elsa ( ALE TEGO CO JEST PO SPRAWDZENIU WARUNKU PODANIA LICZB )  ;]... dzieki czemu nie zeruje ci sie "napis" przed wykonaniem funkcji . Sprawdzilem solved dziala 

Podobne pytania

0 głosów
3 odpowiedzi 162 wizyt
pytanie zadane 23 października 2015 w JavaScript przez mac-rum Użytkownik (610 p.)
0 głosów
2 odpowiedzi 263 wizyt
0 głosów
0 odpowiedzi 75 wizyt
pytanie zadane 3 listopada 2018 w JavaScript przez TheVirus Początkujący (480 p.)

92,555 zapytań

141,403 odpowiedzi

319,559 komentarzy

61,940 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!

...