Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][JQ]pobnieranie danych.
Forum PHP.pl > Forum > Przedszkole
smagul
Witam, chcę pobrać wartości z kilku inputów, niestety nie jestem w stanie określić ile ich będzie w chwili pobierania.
struktura wygląda tak:
  1. <div class="klasa">
  2. <input name="name" type="radio" value="value" />
  3. </div>
  4. <div class="klasa">
  5. <input name="name" type="radio" value="value" />
  6. </div>
  7. <div class="klasa">
  8. <input name="name" type="radio" value="value" />
  9. </div>
  10. <div class="klasa">
  11. <input name="name" type="radio" value="value" />
  12. </div>


niektóre div są display: none, inne display:block. Chcę pobrać wszystkie wartości inputów z display: block, niestety nie wiem jak to sprytnie można zrobić.
idea jest taka, by zrobić pętlę która by przeszła przez wszystkie div.klasa, ale jak sprawdzić ile ich jest i jak zmusić jquery by kolejno się odnosiła do każdej z nich. bardzo proszę o help
flashdev
Kod
var el = $('.klasa input').filter(function(){
return $(this).css('display') == 'block';
});
alert(el.length +' elementow');


Powinno działać.

Edit:
No i jeszcze value:
Kod
var res = [];
for(var i=0;i<el.length;++i){
res[i] = el.eq(i).attr('value');
}
smagul
Nie zadziałało, ale drobna kosmetyka i śmiga smile.gif
Kod
    var el = $('.klasa').filter(function(){
      return $(this).css('display') == 'block';
    }).find("input");
flashdev
Cytat(smagul @ 24.08.2010, 17:28:23 ) *
Nie zadziałało, ale drobna kosmetyka i śmiga smile.gif
...


Bo prawdopodobnie to div`y mają display != 'block', a nie input`y.
Tak powinno zadziałać:

Kod
var el = $('.klasa input').filter(function(){
return $(this).parent().css('display') == 'block';
});
alert(el.length +' elementow');
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.