Estou tentando problemas para executar javascript dentro do ajax.
Segue abaixo meu codigo:
<script type="text/javascript">
function extrairScript(texto){
var ini = 0;
// loop enquanto achar um script
while (ini!=-1){
// procura uma tag de script
ini = texto.indexOf('<script', ini);
// se encontrar
if (ini >=0){
// define o inicio para depois do fechamento dessa tag
ini = texto.indexOf('>', ini) + 1;
// procura o final do script
var fim = texto.indexOf('<scr'+'ipt>', ini);
// extrai apenas o script
codigo = texto.substring(ini,fim);
var novo = document.createElement('script');
novo.type = 'text/javascript';
novo.language = 'javascript';
novo.text = codigo;
document.body.appendChild(novo);
}
}
}
//Exibir ou ocultar divs
function exibirOcultar(valor) {
{/literal}
var unimed = {$codigoUnimed};
{literal}
var indicador = valor;
if( document.getElementById(valor).style.display == "none" ){
document.getElementById(valor).style.display = "block";
loadXMLDoc15(unimed,indicador);
function loadXMLDoc15(unimed,indicador) {
url = "get-dados-indicador.php?unimed="+unimed+"&indicador="+indicador;
req = null;
texto = null;
// Procura por um objeto nativo (Mozilla/Safari)
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange15;
req.open("GET", url, true);
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
req.send(null);
// Procura por uma versao ActiveX (IE)
} else if (window.ActiveXObject){
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange15;
req.open("GET", url, true);
req.send();
}
}
function processReqChange15() {
// apenas quando o estado for "completado"
if(req.readyState == 4) {
// Quando estiver tudo pronto.
if(req.status == 200) {
var resultado = req.responseText; // Coloca o resultado (da busca) retornado pelo Ajax
/*resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos
resultado = unescape(resultado); // Resolve o problema dos acentos
tag = 'script';
initSub = resultado.indexOf('<'+tag+'>');
initTagLen = tag.length+2;
finiSub = resultado.indexOf('</'+tag+'>');
myScript = resultado.substring(initSub+initTagLen,finiSub);
eval(myScript);*/
//document.getElementById(valor).innerHTML = eval(req.responseText);
document.getElementById(valor).innerHTML = resultado;
} else {
document.getElementById(valor).innerHTML = "Erro: ";
}
}
}
}
} else {
document.getElementById(valor).style.display = "none";
}
}
</script>
Tipo qdo eu clico no link eu ate consigo fazer executar o ajax e carregar a outra pagina dentro da div escolhida, problema é que após carregar essa outra pagina o javascript que tem dentro dele não estão executando, detalhe essa pagina é em .tpl (smarty).
Tentei fazer de diversas formas, ate usando o "eval", mas não funcionou.
Alguém sabe me dizer o que esta acontecendo?
---------------------------------------------------------------------
Pessoal, alguem sabe como ajudar?
Estou mesmo precisando.
Edição feita por: kurt_rp, 11/05/2010, 08:36.










