Fordi det du laver, er at indsætte tekst i en textnode og den vil aldrig afvikle javascript.
Skal du noget af den slags, så skal dit respons køres igennem en eval(). F.eks eval('alert("hi");'); hvor din server kun returnere: alert("hi");
Og du behøver naturligvis ikke at lave en funktion til hver side der skal vises, så ryger princippet i funktioner jo.