Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> js i tablice w nazwach
misiek172
post
Post #1





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


Witam.

Mam nastepujący problem:

Mam inputy:
<input type=text name=cos[0]>
<input type=text name=cos[1]>
<input type=text name=cos[2]>
<input type=text name=cos[3]>

Chodzi o to że chciałem odwołać się do nich, lecz w js jak próbuję:
document.forms[0].cos[0].value = 'aaaa';
to wychodzi błąd związany z cos[0] konkretnie z [0]. Musze omijać to za pomocą nadawaniu ID, lecz kłopotliwe to dla mnie jak mam duże i rozbudowane formularze. Potrzebuję pomocy, mianowicie jak sformułować scieżke abym mógł użyć w [] w nazwach inputów.

Z Góry dziękuje za pomoc.
Go to the top of the page
+Quote Post
Cienki1980
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


  1. document.nazwa_formularza['cos[0]'].value='aaa';

Zobacz czy takie rozwiązanie zadziała.
Go to the top of the page
+Quote Post
misiek172
post
Post #3





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


działa, dzięki stary, ratujesz mi 3 godziny pracy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Joy-machine
post
Post #4





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 2.02.2007

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


za pomocą getElementsByTagName zbierz z formularza wszystkie inputy, następnie w pętli sprawdzaj:
Kod
if( tablica[i].getAttribute('name')=='cos['+i+']' ){ ... }

Chociaż trudno wywnioskować, co chcesz dokładnie zrobić na tych inputach. Poza tym brakuje apostrofów w atrybutach!
Go to the top of the page
+Quote Post
misiek172
post
Post #5





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


Cienki1980 najdziwniejsze jest to że według twojego działa, ale wywala błedy że document.nazwa_forma jest pusty lub nie jest obiektem, ale działa (IMG:http://forum.php.pl/style_emoticons/default/haha.gif)

OMG o co chodzi?

Cytat(Joy-machine @ 8.02.2007, 19:11:18 ) *
Poza tym brakuje apostrofów w atrybutach!


jeśli wyrazy nie posiadają spacji, to nie są potrzebne apostrofy

Ten post edytował misiek172 8.02.2007, 19:54:36
Go to the top of the page
+Quote Post
lukasz_sosnowiec
post
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 7.02.2006

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


Cytat(misiek172 @ 8.02.2007, 19:48:13 ) *
jeśli wyrazy nie posiadają spacji, to nie są potrzebne apostrofy

Chyba jednak są od XHTML 1.0 są obowiązkowe.

// Edit - Oczywiście chodzi o cudzysłowy, a nie o apostrofy.

Ten post edytował lukasz_sosnowiec 10.02.2007, 02:56:31
Go to the top of the page
+Quote Post
misiek172
post
Post #7





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


dobra dobra ale mi nie bo nie używam XHTMLa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , czemu mi bład wyskakuje a jednak wyświetla w inputach?
Go to the top of the page
+Quote Post
Cienki1980
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Jeżeli takie coś się pojawia to nie masz albo pola o takiej nazwie, albo coś źle napisane w kodzie. Pokaż kawałek kodu z inputami i kawałek kodu JS.
Go to the top of the page
+Quote Post
lopik
post
Post #9





Grupa: Zarejestrowani
Postów: 340
Pomógł: 0
Dołączył: 7.07.2006

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


  1. <input type="text" name="cos" />
  2. <input type="text" name="cos" />
  3. <input type="text" name="cos" />
  4. <input type="text" name="cos" />
  5. </form>
  6.  
  7.  
  8. <script type="text/javascript">
  9.  
  10. input = document.forms[0].cos
  11.  
  12. for (i = 0; i < input.length; i++)
  13. input[i].value = i;
  14.  
  15.  


Jak wartość w atrybucie w name="" się powtarza (jest identyczna), to tablica automatycznie się z tego robi.
W atrybutach HTML robi sie cudzysłowy, a nie apostrofy.

Ten post edytował lopik 10.02.2007, 00:34:02
Go to the top of the page
+Quote Post
Joy-machine
post
Post #10





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 2.02.2007

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


Poprzez brak cudzysłowa [dzięki lopik za poprawienie] w linkach JS - shackowali allegro, wiec propouje jednak uzywac.

Cytat
dobra dobra ale mi nie bo nie używam XHTMLa

Spoko, nie uzywaj...
Go to the top of the page
+Quote Post
lopik
post
Post #11





Grupa: Zarejestrowani
Postów: 340
Pomógł: 0
Dołączył: 7.07.2006

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


Cytat
dobra dobra ale mi nie bo nie używam XHTMLa

Akurat to nie ma różnicy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

HTML 4.01 Specification
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: 22.08.2025 - 23:16