Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przepisywanie Pól, "hurtowe"
ktuvok
post 19.08.2004, 21:36:42
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 0
Dołączył: 30.11.2003

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


W okienku wyświetlam listę rekordów. Każdy wiersz zawiera formularz z polami
"hidden". W każdym wierszu jest przycisk "WSTAW", który wywołuje następującą
funkcję:
Kod
function WstawDane(formularz)
{
eval('opener.document.forms.NazwaFormularza.PoleA.value =
formularz.PoleA.value');
eval('opener.document.forms.NazwaFormularza.PoleC.value =
formularz.PoleC.value');
eval('opener.document.forms.NazwaFormularza.PoleF.value =
formularz.PoleF.value');
//...itd...
}

Wywołuję to tak:
  1. <INPUT TYPE=button value=Zasuwaj onClick="WstawDane(this.form)">


Jak widać pola w obu formularzach mają takie same nazwy.

Jak to skrócić? Tzn napisać: "przepisz wszystkie pola o tych samych nazwach
z aktualnego formularza do openera"?

Pozdrawiam,
Krzysiek
Go to the top of the page
+Quote Post
akubiczek
post 20.08.2004, 08:37:02
Post #2





Grupa: Zarejestrowani
Postów: 189
Pomógł: 0
Dołączył: 4.07.2004
Skąd: z neostrady

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


Mniej elegancko:

wpisz po prostu nazwy pól do tablicy i w pętli przeleć przez wszystkie

Kod
for (i=0; i<tablica.length; i++) {

opener.document.forms.NazwaFormularza[tablica[i]].value=.....

}


Bardziej elegancko:

w pętli pobieraj kolejne elementy z kolekcji elements (formularz.elements[index]), odczytuj ich nazwę (element.name) i przypisuj wartości. Długość kolekcji masz w property length.


--------------------
pozdrawiam, Adam Kubiczek
kubiczek.eu
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.08.2025 - 16:09