Eu tenho um site que tem inicialmente apenas um pouco de JavaScript, a maioria dos usa AJAX para carregar outros conteúdos. Eu tenho uma divisão no meu HTML que está vazio no início.
<div id="myDiv"></div>
Depois que o AJAX recupera o conteúdo mostra na divisão, eu simplesmente colá-lo com o seguinte código:
Document.getElementById("myDiv").InnerHtml = contentFromServer;
Mostrar o HTML conteúdo como deveria. Nenhum problema lá. Mas o conteúdo inclui alguns javascript. Aqui está um exemplo.
<script languaje="javascript">
function myFunction(param1)
{
//Just some code to prove it.
alert(param1);
}
</script>
<table><tr>
<td>
Olá, mundo!
</td>
</tr></table>
Agora depois que eu mostro o conteúdo (a tabela é exibida na divisão) eu tento executar a função:
Document.getElementById("myDiv").InnerHtml = contentFromServer; //Same como acima
myFunction("abc"); //This não funciona.
Ele não reconhece o pedaço do script recuperado pelo AJAX. A única maneira que eu possa maio acontecer é se eu incluir myFunction () a partir do momento em que a página é carregada, mas o site é bastante grande e usa um pouco de JavaScript, então eu queria usar o que o usuário precisa somente em um momento em particular.
Eu tentei com o Explorer e o Firefox. Existe uma maneira de ativar o código javascript recuperado pelo AJAX, depois que a página é carregada? Estou usando o código AJAX encontrado em www.w3schools.com, é fácil de usar, mas mais haver alguma coisa faltando... se é possível a todos.