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

javascript formularz

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
2,347 wizyt
pytanie zadane 22 października 2017 w JavaScript przez Wojciech Tuszkiewicz Użytkownik (500 p.)

Witam mam w javascript taki przykładowy formularz:

<html lang="pl">
<head>
<meta charset="utf-8" />
<title>My first lesson in javascript</title>
</head>
<body>

<input type="submit" value="sprawdz poprawność nicku" onclick="nick()" />

<script>


function nick()
{

	var pole = document.getElementById("pole");
	  
	var str = pole.innerHTML = ""+pole.value+"";
    var x = str.length;
	
	if (x < 5)
	{
		document.getElementById("sprawdz").style.color = "red";
		document.getElementById("sprawdz").innerHTML='Nick jest za krótki';
	}
	else if (x > 20)
	{
		document.getElementById("sprawdz").style.color = "red";
		document.getElementById("sprawdz").innerHTML="Nick jest za długi!";
	}
	else
	{
		document.getElementById("sprawdz").style.color = "green";
		document.getElementById("sprawdz").innerHTML="Nick jest w porządku";
	}
}
</script>

<input type="text" id="pole" />

<div id="sprawdz"></div>

</body>
</html>

i chcę zdobyć taki efekt sprawdzenia poprawności nicku takie jak ma np. google czyli wpiszę nick i kliknę poza pole tekstowe to od razu sprawdzi czy nick nie jest za długi i.t.p. ale jak cały kod wstawiam w pętle to kod przestaje działać a w konsoli żadnych błędów nie wywala.

1 odpowiedź

+1 głos
odpowiedź 22 października 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
wybrane 22 października 2017 przez Wojciech Tuszkiewicz
 
Najlepsza
Po pierwsze wstawiaj tagi script przed </body>

Aby uzyskać pożądany efekt użyj zdarzenia onblur na inpucie
komentarz 22 października 2017 przez Wojciech Tuszkiewicz Użytkownik (500 p.)
dzięki
komentarz 22 października 2017 przez Wojciech Tuszkiewicz Użytkownik (500 p.)

A mam teraz inny problem bo nazwa pola (name) się gryzie z (onblur) i co w tym przypadku zrobić 

<input type="text" name="nick" id="pole" onblur="nick()" />

jak mam name'a to skrypt js przestaje działać i wywala błędy

komentarz 22 października 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
Spróbuj nie używać atrybutu HTML "onclick", zamiast tego użyj addEventListener. No i po prostu zmień nazwę funkcji na inną.

Podobne pytania

0 głosów
0 odpowiedzi 265 wizyt
pytanie zadane 21 lipca 2017 w JavaScript przez Bartlomiej Bywalec (2,480 p.)
0 głosów
1 odpowiedź 2,722 wizyt
pytanie zadane 21 października 2018 w JavaScript przez DinapeS Początkujący (350 p.)
0 głosów
2 odpowiedzi 2,233 wizyt
pytanie zadane 11 października 2018 w JavaScript przez Sobol3k Użytkownik (690 p.)

93,187 zapytań

142,203 odpowiedzi

322,020 komentarzy

62,513 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2365p. - dia-Chann
  2. 2326p. - Łukasz Piwowar
  3. 2315p. - Łukasz Eckert
  4. 2301p. - CC PL
  5. 2269p. - Tomasz Bielak
  6. 2235p. - Łukasz Siedlecki
  7. 2232p. - rucin93
  8. 2169p. - Marcin Putra
  9. 2164p. - Adrian Wieprzkowicz
  10. 2006p. - Michal Drewniak
  11. 1950p. - Anonim 3619784
  12. 1909p. - Dawid128
  13. 1901p. - Mikbac
  14. 1744p. - rafalszastok
  15. 1487p. - Michał Telesz
Szczegóły i pełne wyniki

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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...