Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ronanlumb

Ajax, Divs e códigos JAva.

Recommended Posts

Bem gente, uma dúvida ta me deixando nervoso já.

 

Tipo assim. tenho la o meu site

 

E no meio tem uma DIV onde mudo o conteúdo.

 

Está funcionando corretamente só que tem um problema, se eu abrir uma página nesta DIV e nesta pagina tiver um comando JAVA o comando simplesmente não é executado.

 

EX: coloquei na minha página que vai abrir nesta DIV

 

<script language="javascript" type="text/javascript">alert("aff");</script>

Ela simplesmente não aparece a mensagem se alerta. Agora se eu abrir a pagina diretamente pelo browser digirando o endereço dela o comando é executado.

 

Tem alguma forma de resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/index.php?showtopic=174729

 

Esse é o ajax que utilizo, ele tem uma funçao chamada ExtraiScript que faz isso que você quer, executar os codigos javascript da página

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem naum seiu se é o Ajax q naum abre a ScriptPor que eu montei um vizualizador de texto(sem ajax, ele vizualiza uma form) e scripts tbm naum funcionam...Acho que é a Id que naum recebe ou naum interpreta Scripts

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porem eu achei esse código só tem um erro se tiver o caracter "+"(mais)

Ele naum lê eu vou verificar o erro e depois te passo a correção

 

<script>function extraiScript(texto){	// inicializa o inicio ><	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);			// executa o script			eval(codigo);		}	}}/*if (xmlhttp.readyState==4){			// coloca o valor no objeto requisitado			texto=unescape(xmlhttp.responseText);			document.getElementById(destino).innerHTML=texto;			// executa scripts			extraiScript(texto);}*/function openAjax() { var Ajax; try {Ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers mais populares, como: Firefox, Safari, dentre outros. }catch(ee) { try {Ajax = new ActiveXObject(" Msxml2.XMLHTTP"); // Para o IE da MS }catch(e) { try {Ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS }catch(e) {Ajax = false; } } } return Ajax; } function carregaAjax(id,arquivo) { if(document.getElementById) { // Para os browsers complacentes com o DOM W3C. var exibeResultado = document.getElementById(""+id+""); // div que exibirá o resultado. var Ajax = openAjax(); // Inicia o Ajax. Ajax.open("GET", ""+arquivo+"", true); // fazendo a requisição Ajax.onreadystatechange = function() { if(Ajax.readyState == 1) { // Quando estiver carregando, exibe: carregando... exibeResultado.innerHTML = "<div align='center'><strong>Carregando...</strong></div>"; } if(Ajax.readyState == 4) { // Quando estiver tudo pronto. if(Ajax.status == 200) { var resultado = Ajax.responseText; // Coloca o retornado pelo Ajax nessa variável resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos (saiba mais aqui: http://www.plugsites.net/leandro/?p=4) resultado = unescape(resultado); // Resolve o problema dos acentosexibeResultado.innerHTML = resultado;extraiScript(resultado);} else { exibeResultado.innerHTML = "Erro: .";} } } Ajax.send(null);} } </script><a href="java script:carregaAjax('destino','chatajax2/index.php')">carrega</a><div id=destino></div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.