Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Dodanie tekstu
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
nastu7
Napis dodaje się po zmianie wartości, jednak po sfocusowaniu pola value napisy się oczywiści usuwają, lecz po kolejnej zmianie dodają się już 2 napisy.
Niezależnie od tego czy będzie to wartość positive lub negative, dodaje się taka ilość identycznych napisów jeden pod drugim, ile zostało wprowadzonych zmian bez odświeżania strony.
Oczywiście za każdym razem usuwają się wszystkie po sfocusowaniu.

Jak mogę zmienić kod, aby za każdym razem po zmianie wartosci tekstu wyswietlał się tylko jeden napis?

  1. var passCheck = function(){
  2. var $pasValue = $('input[name="value"]');
  3.  
  4. $pasValue.focus(function(){
  5. $('.negative').remove();
  6. $('.positive').remove();
  7. });
  8.  
  9. $pasValue.change(function(){
  10. if($pasValue.val() != "test"){
  11. $("<p class=\"negative\"><img src=\"images/x.png\" class=\"p3\" /> Błędna wartosc</p>").insertAfter($pasValue);
  12. }else{
  13. $("<p class=\"positive\"><img src=\"images/y.png\" class=\"p3\" /> Poprawna wartosc</p>").insertAfter($pasValue);
  14. }
  15.  
  16. });
  17. }
nospor
A czy ty przypadkiem passCheck nie odpalasz kilkukrotnie? To by tlumaczylo czemu ci sie tak wszystko mnozy...
nastu7
Faktycznie smile.gif funkcje wywoływało onChange, dlatego się mnożyło. Teraz widzę, że to drobnostka.

Dzięki za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.