Come faccio a impedire che la funzione window.onbeforeunload venga richiamata se clicco su un pulsante submit.
E' importante...e molto urgente...
Grazie
Come faccio a impedire che la funzione window.onbeforeunload venga richiamata se clicco su un pulsante submit.
E' importante...e molto urgente...
Grazie
Beh ci sono vari modi il più semplice: la elimini dalla invocazione dell' evento onbeforeunload, semplicemente. Cioè, ci sarà scritto da qualche parte:
onbeforeunload="funzione()" o simili: elimina tutto il gestore di evento.
Oppure, se vuoi preservare la funzione (ammettiamo nell' esempio che si chiami funzione() )
function funzione(){
return true;//mettendo questa riga qui in cima, ti evita il runtime del codice seguente
}
O, altrimenti, se vuoi eliminare solo una funzione da un gestore di eventi onbeforeunload che ne gestisce più di una (non dici se fosse questo il caso): removeEventListener (o detachEvent per versioni meno aggiornate di ie)
Insomma le soluzioni sono molte, dipende da quel che devi ottenere (se hai eventi multipli o no, non lo sappiamo, o se desideri mantenere la funzione per uso futuro ma disabilitarla momentanemente con un return true - questo specie se è una funzione che sta in una libreria e quindi potrebbe continuare a tornare utile in futuro) e da come è invocato l'evento (se da un tag come attributo, o se da un qualche script che lo assegna).
La cosa più ovvia sarebbe di localizzare semplicemente dove sta la chiamata a onbeforeunload e, semplicemente - puff: cancellarla!