Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Problem z konstrukcją elementu select/option
Forum PHP.pl > Forum > Przedszkole
phpamator
Dzień dobry przedszkolakom,
Dawno się nie odzywałem, dzisiaj jednak, postanowiłem się odezwać i być może znaleźć sposób na mój problem:
otóż zapragnąłem dynamicznie woparciu o zawartość strony budować element tylu <select>
więc od razu pomyślałęm jQuery, selector, loop i gotowe ale nieoczekiwanie zamiast elementu dostałem błąd o treści " ... Uncaught TypeError: Cannot use 'in' operator to search for 'length' in div[name^=abc] ..."

mój jQuery kod:
[JAVASCRIPT] pobierz, plaintext
  1. jQuery(document).ready(function(){
  2.  
  3. function printOptions(brand){
  4. jQuery.each('div[name^='+brand+']', function(){
  5. jQuery('<option/>', {
  6. 'value': jQuery(this).val(),
  7. 'text': jQuery(this).text()
  8. }).appendTo('.brand_search');
  9. });
  10. }
  11.  
  12. jQuery('#brand_search').keyup(function(){
  13. var brand = jQuery('#brand_search').val();
  14. if(brand){
  15. printOptions(brand);
  16. jQuery('div.listfav').css('border','1px solid rgba(0,0,0,0.1)');
  17. jQuery('div[name^='+brand+']').css('border','1px solid red');
  18. }else{
  19. jQuery('div[name^='+brand+']').css('border','none');
  20. console.log('Nie znaleziono!');
  21. }
  22. })
  23. })
[JAVASCRIPT] pobierz, plaintext


Co skopałem albo jak powinienem to zrobić żeby mi zbudowało element którego potrzebuje questionmark.gif
nospor
Jquery.each() wymaga tablicy a ty mu dajesz tekst... PRzeciez komunikat bledy wyraznie o tym mowi

Nie
jQuery.each('div[name^='+brand+']'
a:
jQuery.each(jQuery('div[name^='+brand+']')

Albo lepiej:
jQuery('div[name^='+brand+']').each(....)
phpamator
Ooops smile.gif
coś takiego ?
[JAVASCRIPT] pobierz, plaintext
  1. function printOptions(brand){
  2. jQuery('div[name^='+brand+']').each(function(){
  3. jQuery('<option/>', {
  4. 'value': jQuery(this).val(),
  5. 'text': jQuery(this).text()
  6. }).appendTo('#quick');
  7. });
  8. }
[JAVASCRIPT] pobierz, plaintext

..
questionmark.gif
nospor
Bardziej tak:

.each(function(element){

i wowczas pod element masz aktualny element tablicy. Manual nie gryzie tongue.gif
phpamator
Super dzięki za super szybką odpowiedź, działa jak należy smile.gif
.... wyedytowałem zły post smile.gif
nospor
Cytat
mógłby kolega rozjaśnić przykładem ?
A teraz zglupialem... co rozjasnic? Przeciez poprawilem ci kod i podalem przyklad. Napisales ze dziala. To co mam jeszcze rozjasniac? smile.gif
phpamator
Sorry nospor smile.gif nie chciałem Ciebie "skonfundować"
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.