Salve a tutti! Avrei un problema (strano :P) con javascript.
Vorrei che quando clicco su un form se c'è qualche errore mi venga fuori un'alert e se invece va tutto ok devo richiamarmi una funzione che mi modifica il DOM. L'idea sarebbe quella di compilare un form che, al submit dello stesso, mi va a checkare i campi. Se è ben compilato mi fa apparire un div "caricamento in corso", altrimenti mi visualizza un'alert.
Allora: il punto 1 l'ho già fatto e il punto 2 anche! Il problema è unire le due cose!!!
Praticamente sul button INVIA del form ho messo onclick="return check_works_form()" che mi richiama la funzione check_works_form() e mi controlla se tutto è ok. In questo caso mi ritorna TRUE altrimenti FALSE e butta fuori un'alert.
La funzione che modifica il DOM (l'ho chiamata upload_alert(), che fantasia) mi mette un div a tutto schermo con un'immagine e una scritta. Funziona anche questa.
Adesso... come faccio ad unire queste due cose? E' il return che mi frega! Io nel check_works_form() ho un pò di if che sono tutte le condizioni in cui mi deve ritornare FALSE:
if(...)
return false;
else if(---)
return false;
return true;
E questo è fatto bene! Solo che se provo a richiamare la funzione upload_alert poco prima del return true non me la calcola e passa direttamente al return! Come è possibile?!? Come posso fare!??! Vi prego... illuminatemi!! Grazie!
Se volete vi posto qui di seguito il codice del check:
codice:
function check_works_form(){
if (document.works_form.title.value=="") {
alert('Non hai inserito alcun titolo');
return false;
}
else if (document.works_form.photo.value=="1" && document.works_form.photo_chooser.value=="") {
alert('Hai attivato la casella \'foto\' ma non ne hai selezionata nessuna');
return false;
}
else if (document.works_form.description.value=="") {
alert('Non hai inserito alcuna descrizione');
return false;
}
return true;
}