err non e' globale, ma locale a checkData()
comunque l' errore e' molto comune per chi si avvicina ad ajax:
dimenticarsi che l' interazione asincrona comporta ritardi,
ritardi cha fanno comunque esaurire la funzione
quando esegui updatepage() checkData ha finito da tempo il suo compito e ritornato il valore di err al momento (sicuramente false, come all' inizializzazione)
che err cambi valore in un secondo tempo e' irrilevante per checkData
rivedi la logica della tua applicazione
ciao

Rispondi quotando