recuerda que el ajax.status es en realidad un estado del protocolo
HTTP y lo más probable es conseguir estado según su tipo:
100 ~ 1xx: información
200 ~ 2xx; Aceptado (entre otros)
300 ~ 3xx: Redirecciones
400 ~ 4xx:
Errores del cliente (como el 404 no encontrado)
500 ~ 5xx: Errores del servidor
info:
http://www.w3schools.com/tags/ref_httpmessages.asp
donde es casi imposible que ajax.status devuelva 0,
es el readyState el que puede devolver 0 porque representa el estado de la conexión, +info:
http://librosweb.es/ajax/capitulo7/m...tprequest.html
con respecto al document.domain, lo que hace es devolver el dominio de la página:
http://www.w3schools.com/jsref/prop_doc_domain.asp
aunque en AJAX no hace falta, porque con colocar rutas relativas basta para acceder al mismo dominio, y es lo ideal porque no se permiten dominios externos (exceptuando ajax crossdomain),
si tienes problemas para acceder a la raiz del dominio en servidores con Url Amigables, usa "/" como prefijo, donde
/pag.php es lo mismo que
http://miweb.com/pag.php