View previous topic :: View next topic |
Author |
Message |
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 16.05.2007 11:51 Post subject: Firefox, onClick, ajax |
|
|
Imam ovakvu formu:
Code: | <form name="ul" method="post" action="" enctype="multipart/form-data" >
<input type="file" size="64" name="filecontent">
<input name="ubaci" type="hidden" id="ubaci" >
<input onClick="process('posalji_nesto')" type="submit" name="u" value="Submit">
</form> |
JavaScript je klasično spajanje na server i preko GET-a poziva se php skripta. Koja vraća neki tekst, ništa komplicirano. A onda JavaScript ubacuje value u id forme "ubaci".
ovako izgleda dio koda u JavaScriptu za handlanje odgovora
Code: | function handleServerResponse(){
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
xmlResponse = xmlHttp.responseXML;
xmlDocumentElement = xmlResponse.documentElement;
ubaci = xmlDocumentElement.firstChild.data;
document.getElementById("password1").value = ubaci;
setTimeout('process()', 1000);
} else {
alert("Greska kod pristupa serveru!");
}
}
} |
I stvar super funkcionira kod Opere i IE, no kod firefoxa ne radi, jer jednostavno ne uspije dobit dobar response. Zapravo sve se sruši na liniji if(xmlHttp.status == 200). Firebug javi grešku:
Code: | [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: http://nesto.com/obrada.js :: handleServerResponse :: line 50" data: no]
[Break on this error] if(xmlHttp.status == 200) { |
A kad zamjenim u formi onClick sa onMouseOver stvar radi.
Da li netko zna odgovor zašto neće radit sa onClick na firefoxu |
|
|
Back to top |
|
|
r3dsc0rpi0n
Joined: 20 Apr 2005 Posts: 354 Location: Zagreb
|
Posted: 16.05.2007 12:24 Post subject: |
|
|
Probaj na formu stavit onsubmit. |
_________________ ::: Fortis est, qui se vincit ! :::: |
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 16.05.2007 13:06 Post subject: |
|
|
onda se pogotovo ništa ne događa, probao sam
u biti nisam sve napisao, dakle u formi pod atribut action treba ići neka stranica za obradu forme, e sad ako bi stavio onSubmit odmah bi se sadržaj forme predao stranici za obradu i onda JavaScript ne stigne umetnut sadržaj, tako ispada
kod onClick stvar uspjeva kod Opere i IE, možda oni prije stignu dohvatit podatak i umetnut ga u formu prije nego što se pošalje |
|
|
Back to top |
|
|
snyder
Joined: 21 Dec 2005 Posts: 57 Location: Zagreb
|
Posted: 16.05.2007 13:21 Post subject: |
|
|
nakon koda u onsubmit stavi return false; pa ti se forma nece submitat na action stranicu a sve prije return false ce ti se izvrsit |
|
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 16.05.2007 13:31 Post subject: |
|
|
nisam baš skužio, gdje trebam return stavit
ja želim da mi se forma pošalje, i ja ne obrađujem sadržaj forme sa javascriptom već sa php-om |
|
|
Back to top |
|
|
Moebius
Joined: 26 Jan 2004 Posts: 245 Location: zagreb
|
Posted: 16.05.2007 13:39 Post subject: |
|
|
Quote: | nisam baš skužio, gdje trebam return stavit
ja želim da mi se forma pošalje, i ja ne obrađujem sadržaj forme sa javascriptom već sa php-om |
Code: | <form action="nesto" name="ime" onsubmit="javascript:nekiPoziv(); return false; "> |
Tako nekako cini mi se. |
|
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 16.05.2007 13:48 Post subject: |
|
|
da to sam i ja tako skužio pa je rezultat isti, tj. nevidim kako bi taj return false mogao pomoć da se stranica ne submita prije nego što ta neka funkcija obavi to što treba |
|
|
Back to top |
|
|
Moebius
Joined: 26 Jan 2004 Posts: 245 Location: zagreb
|
Posted: 16.05.2007 14:59 Post subject: |
|
|
Quote: | tj. nevidim kako bi taj return false mogao pomoć |
oce pomoc. sigurno,
probaj si instalirati FireBug ekstenziju za FireFox https://addons.mozilla.org/en-US/firefox/addon/1843) ako koristis FF, moze ti dati dobar uvid u evente koji se izvrsavaju na razini JavaScript-a, moglo bi ti pomoci i u tvom konkretnom problemu. |
|
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 16.05.2007 23:18 Post subject: |
|
|
koristim firebug i napisao što je javio u prvom postu, lol
uglavnom stvar je riješena uz pomoć snyder na MSN-u, hvala svima na prijedlozima |
|
|
Back to top |
|
|
carr
Joined: 13 Nov 2003 Posts: 1397 Location: Karlovac
|
Posted: 18.05.2007 00:40 Post subject: |
|
|
neznam kako bi ti funkcija handleResponse trebala znati sto je varijabla xmlHttp.
vjerojatno (barem uobicajeno) ta funkcija izgleda ovako
Code: | function handleServerResponse(xmlHttp){
if(xmlHttp.readyState == 4) {
... |
|
_________________ Bolje biti malo lud, nego malo pametan. |
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 18.05.2007 01:19 Post subject: |
|
|
zna jer je globalna varijabla
da je to problem bio nebi radilo niti u jednom browseru |
|
|
Back to top |
|
|
sinke
Joined: 02 Oct 2005 Posts: 257 Location: Zagreb
|
|
Back to top |
|
|
|