Lo que te pasa en el código es que AJAX es asíncrono. Es decir, la función traerdatos() llama a funciones AJAX, que son asincronas y van a su ritmo; y seguidamente sigue con el resto de tu página (el alert en este caso) sin esperar a que las llamadas ajax terminen.
Si quieres ejecutar un código cuando se cargue AJAX, introducelo en codigo.js:
Código Javascript
:
Ver original...
document.getElementById(id_contenedor).innerHTML = resp
llamada_a_otras_funciones();
alert('prueba');
cualquier_otra_cosa();
...
}}
Recuerda siempre eso, que AJAX es
asíncrono, independiente del resto de la página.