[JS] Wykonuje się tylko pierwsza linia w funkcji

0

Cześć, mam funkcję:

function checkSongs(f, mp3, gp)
{
 if((f.mp3.value!='') || (f.mp3.value!=mp3)) f.sendMp3File.value='true';
 alert(f.gp.value);
 if((f.gp.value!='') || (f.gp.value!=gp)) f.sendGpFile.value='true';
}

(przyrównanie do true ma naprawdę być stringiem)

Teraz kwestia wygląda tak, że alert się nie pokazuje. Lecz, gdy jest jako pierwsza instrukcja, to się pokazuje. Wniosek - wykonuje się tylko pierwsza linia w funkcji. Czemu?

0

Pokaż jeszcze jak wykorzystujesz tą funkcje. To że sie wykonuje tylko 1 linia, to zapewne wina tego, żę jest tam błąd i reszta już się nie wykonuje.

0

powiedz też czy nigdzie się nie wykonuje, jeśli tylko na IE to powodem może być kolizja nazw zmiennych - prawdopodobnie masz element o id = gp

0

Ja bym obstawiał, że źle podajesz argumenty do funkcji, bo powinno być checkSongs(document.nazwa_formularza,'nazwa_inputa','nazwa_inputa2');

tak mi się przynajmniej wydaje ;-)

Btw. proponuję zainstalować rozszerzenie do firefoxa FireBug - konsola JS, sprawdzająca na bieżąco stronę. Bardzo przydatne dla początkujących programistów JS (np. mowa o mnie ;-) ), ale nie tylko.

0

@wowo: Z debugerów korzystają nawet profesjonaliści, więc nie ma co mówić, że dla początkujących programistów JS. Dla wszystkich programistów JS jest dobre :)

0
Adam.Pilorz napisał(a)

@wowo: Z debugerów korzystają nawet profesjonaliści, więc nie ma co mówić, że dla początkujących programistów JS. Dla wszystkich programistów JS jest dobre :)

Powiedzialbym nawet, ze 'szczegolnie' profesjonalisci, bo przy wiekszym kodzie sledzenie bledow bez debuggera to tragedia :) a w js to juz w ogole.

pozdrawiam
johny

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0