Javascript i firefox - skad wziac obiekt event?

Problemy dotyczące programowania.

Moderatorzy: Moderatorzy, Administratorzy

miszmaniac
Moderator
Posty: 1510
Rejestracja: 2006-03-19, 12:00
Lokalizacja: Gdynia
Kontakt:

Javascript i firefox - skad wziac obiekt event?

Post autor: miszmaniac »

Hej,

Mam taki problem, napisałem tabele, której zawartość może być zmieniana za pomocą Ajaxa, javascript usuwa wiersze tabeli i tworzy nowe. Problem pojawia się przy onclicku. Kod dodawania wiersza wygląda tak:

Kod: Zaznacz cały

function addRow(idt, nazwiskot, imiet){
		var myTable = document.getElementById('studenci');
		var tBody = myTable.getElementsByTagName('tbody')[0];
		var newTR = document.createElement('tr');
		newTR.setAttribute('id',idt);

		newTR.onclick = function Funkcja() { 
			UtworzOpcje(idt, nazwiskot, imiet, event); 
		}
		
		var id = document.createElement('td');
		var nazwisko = document.createElement('td');
		var imie = document.createElement('td');
		
		id.innerHTML = indekst;
		nazwisko.innerHTML = nazwiskot;
		imie.innerHTML = imiet;
		
		newTR.appendChild (id);
		newTR.appendChild (nazwisko);
		newTR.appendChild (imie);
			
		tBody.appendChild(newTR);
	} 
A cały problem polega na tym, że onclick sie wywołuje, tylko skąd wziąc obiekt event?
W czasie tworzenia skryptu oczywiste jest, że nie ma zmiennej event (wiec to co napisałem ma bład). Jak napisac to, żeby w czasie kliknięcia odczytywany był event?

Acha... wszystko ma działac w firefoxie, więc window.event odpada.
Ostatnio zmieniony 2008-09-19, 11:50 przez miszmaniac, łącznie zmieniany 1 raz.
Pamiętaj,
Jeśli Twój problem został rozwiązany dopisz [b] [Rozw.] [/b]w tytule.
Projektowanie stron WWW: [url=http://www.miszewski.net.pl]www.miszewski.net.pl[/url]
Awatar użytkownika
mina86
Moderator
Posty: 3338
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: mina86 »

Obiekt event jest przekazywany jako argument funkcji obsługi zdarzenia, np.:

Kod: Zaznacz cały

foo.onclick = function (ev) { alert(ev); }
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
miszmaniac
Moderator
Posty: 1510
Rejestracja: 2006-03-19, 12:00
Lokalizacja: Gdynia
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: miszmaniac »

I nazywa się ev? Bo jak wpisywalem event o tak:

Kod: Zaznacz cały

        newTR.onclick = function Funkcja(event) {
            UtworzOpcje(idt, nazwiskot, imiet, event);
        } 
to nie działało.
Pamiętaj,
Jeśli Twój problem został rozwiązany dopisz [b] [Rozw.] [/b]w tytule.
Projektowanie stron WWW: [url=http://www.miszewski.net.pl]www.miszewski.net.pl[/url]
Awatar użytkownika
mina86
Moderator
Posty: 3338
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: mina86 »

Możliwe, że błąd jest gdzie indziej w kodzie. Stwórz najkrótszą stronę, na której błąd występuje i wklej jej kod.
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
mati0712
Użytkownik
Posty: 65
Rejestracja: 2007-05-18, 20:05

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: mati0712 »

Myślę, że błąd tkwi jeszcze w tym, że w funkcji "Funkcja" nie ma zdefiniowanych zmiennych idt, nazwiskot, imiet.
Ostatnio zmieniony 2008-09-19, 21:54 przez mati0712, łącznie zmieniany 2 razy.
Awatar użytkownika
mina86
Moderator
Posty: 3338
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: mina86 »

Nie jestem pewny, czy to jest problem -- funkcja ma chyba dostęp do wszystkich zmiennych zdefiniowanych w kontekście, w którym była tworzona.
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
miszmaniac
Moderator
Posty: 1510
Rejestracja: 2006-03-19, 12:00
Lokalizacja: Gdynia
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: miszmaniac »

Kurcze, okazało się, że trzeba było gdzie indziej wpisać ten event:

Kod: Zaznacz cały

function addRow(idt, nazwiskot, imiet){
        var myTable = document.getElementById('studenci');
        var tBody = myTable.getElementsByTagName('tbody')[0];
        var newTR = document.createElement('tr');
        newTR.setAttribute('id',idt);

        newTR.onclick = function Funkcja(event) {
            UtworzOpcje(idt, nazwiskot, imiet, event);
...
Dziwne jest to, że wydaje mi się, że tak robiłem na początku i nie działało.

Dzięki za pomoc!
Pamiętaj,
Jeśli Twój problem został rozwiązany dopisz [b] [Rozw.] [/b]w tytule.
Projektowanie stron WWW: [url=http://www.miszewski.net.pl]www.miszewski.net.pl[/url]
Awatar użytkownika
mina86
Moderator
Posty: 3338
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Javascript i firefox - skad wziac obiekt event?

Post autor: mina86 »

miszmaniac pisze:zięki za pomoc!
Rachunek prześlę pocztą.
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
ODPOWIEDZ