Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js] jak znalezc wszystkie elementy o danym name
misty
post
Post #1





Grupa: Zarejestrowani
Postów: 366
Pomógł: 0
Dołączył: 2.01.2007

Ostrzeżenie: (0%)
-----


Czesc, jak moge znalezc przy pomocy czystego javascript lub jquery wszystkie elementy z podanym name ? Chcialabym miec tablice tych elementow. Elementy te maja taki sam name! Kod wyglada mniej wiecej tak:

  1. <form name="form_name">
  2. <div class="navmenu">
  3. <ul class="adxm menu">
  4. <li><a href="#" title="" >NAV 1</a>
  5. <ul>
  6. <li><a href="#" onClick="testFn();">Item 1</a></li>
  7. <li name="test" id="test" style="display:none;"><a href="#">Item 2</a></li>
  8. <li name="test" style="display:none;"><a href="#">Item 3</a></li>
  9. <li name="test" style="display:none;"><a href="#">Item 4</a>
  10. </li>
  11. </ul>
  12. </li>
  13. <li><a href="#" title="">NAV 2</a>
  14. <ul>
  15. <li><a href="#">Item 1</a></li>
  16. <li><a href="#">Item 2</a></li>
  17. <li><a href="#">Item 3</a></li>
  18. <li><a href="#">Item 4</a></li>
  19. </ul>
  20. </li>
  21. <li><a href="#" title="">NAV 3</a>
  22. <ul>
  23. <li><a href="#">Item 1</a></li>
  24. <li><a href="#">Item 2</a></li>
  25. <li><a href="#">Item 3</a></li>
  26. <li><a href="#">Item 4</a></li>
  27. </ul>
  28. </li>
  29.  
  30. </ul>
  31. </div>
  32. </form>


i kod js:

  1.  
  2. function testFn(){
  3.  
  4. var elements = document.forms['form_name'].elements['test'];
  5.  
  6. }



Z tego co kojarze to cos takiego powinno dzialas. Ale jak potem probuje odczytac elements.length to dostaje ze undefined lub null.. A moze da sie to zrobic prosciej/szybciej w juery? Probowalam z metoda find, ale cos takiego: var x = find($('li[name=test]')); nie dziala..

bede wdzieczna za wszystkie wskazowki..


pzdr,
misty
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


jquery selectors
Go to the top of the page
+Quote Post
kamil4u
post
Post #3





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Użyj: getElementsByTagName ( https://developer.mozilla.org/en/DOM/elemen...ementsByTagName ) - ew. jQuery, ale to linka już dostałeś

--edit--
Źle (IMG:style_emoticons/default/wink.gif) - oczywiście miało być getElementsByName( https://developer.mozilla.org/en/DOM/docume...tElementsByName )

Ten post edytował kamil4u 4.01.2012, 16:00:16
Go to the top of the page
+Quote Post
misty
post
Post #4





Grupa: Zarejestrowani
Postów: 366
Pomógł: 0
Dołączył: 2.01.2007

Ostrzeżenie: (0%)
-----


no to jak mozliwe ze

  1. var elements = document.getElementsByName('test');
  2.  
  3. alert(elements.length);


i alert pokazuje mi 0?

a te selectory to z tego co widze maja same przyklady z uzyciem id. a ja znalezc musze po name..

dobra, znalazlam jakis przyklad ktory mi zadzialal:

  1. var elements = $('li[name=test]')


pzdr
Go to the top of the page
+Quote Post
kamil4u
post
Post #5





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Twoim problemem pewnie jest obsługa DOM. Żeby można było znaleźć elementy muszą się one załadować, a żeby były załadowane to musisz użyć odpowiedniego zdarzenia np. onload.

http://jsfiddle.net/tBEs8/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 23:43