Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js][jquery] pobieranie wartości id z zanzaczonego pola
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
SaMi
Witam,
jak mogę pobrać wartość id pola input albo select w które aktualnie klinkełem ? pobranie wartości pola value nie ma problemu bo bedzie to
  1. $(this).val()

niestety nie wiem jak pobrać wartość id z pola w którym aktualnie jestem.
nospor
$(this).attr('id')

a skoro masz this, to wystarczy:
this.id
SaMi
No dobra przyznam się że zaczynam dopiero zabawę z jquery i możliwe że można to zrobić prościej, bynajmniej mam coś takiego do sprawdzania czy w formularzu pola input i select po zaznaczeniu są puste czy też podaną jakąś wartość. I robię to na razie w ten sposób:

  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. check();
  4. });
  5.  
  6. function check()
  7. {
  8. var x = ["input", "select"];
  9.  
  10. for(var n = 0; n < x.length; n++)
  11. {
  12. $(x[n]).click(function ()
  13. {
  14. var text = $(this).attr('id');
  15. text = "#" + text;
  16.  
  17. if(!this.value)
  18. {
  19. $(text).change(function() { $(text).addClass("bg1"); });
  20. }
  21. else
  22. {
  23. $(text).change(function() { $(text).removeClass("bg1"); });
  24. }
  25. });
  26. }
  27. }


Działa mi to częściowo gdy pola są puste wszystko jest ok, gdy wprowadzę jakieś dane zmienia się kolor tła i jest ok, gdy usunę cześć znaków to kolor tła znów zmienia się na biały czyli usuwam wcześniej dodaną klasę(css) mimo że w danym polu są jeszcze dane.
Gdzie robię błąd ?
kubarek
Powinno być tak:
Kod



function check()
{
var x = ["input", "select"];

for(var n = 0; n < x.length; n++)
{

$(x[n]).click(function ()
{
    var text = $(this).attr('id');
    text = "#" + text;

    var self = this;
    $(text).change(function() {

    if (!self.value)
    $(text).addClass("bg1");
    else
    $(text).removeClass("bg1");  

    });
});

}

}
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.