probabilmente dipende dal fatto che la chiamata ajax è asincrona
quindi quando valuti risposta nell' if, questa non è ancora definita
prova a cambiare
ajax.open("post", pagina, true);
con
ajax.open("post", pagina, false);
se funziona, allora il problema sta lì