Hola,
Prueba a hacer esto:
Código:
this.states="";
var that = this;
dentro de la funcion interna, utiliza that en lugar de this:
Código:
onComplete:function(respuesta)
{
var profes = eval('('+respuesta.responseText+')');
that.states = profes;
}
saludos