no, un' inclusione lato server inserisce quel contenuto esterno nel documento, esattamente nel punto in cui si trova l' inclusione
per il lato client quella parte aggiunta e' come se ci fosse sempre stata nel documento

sicuramente il problema e' nella tempistica: tentare di accedere ad un elemento non ancora definito nel markup genera errori, perche' lo script non puo' sapere di cosa si sta parlando

per questo in genere si fanno eseguire script che interagiscono col markup al window.onload (o domready, per non attendere tutto il caricamento di file accessori al documento)