Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/11/2012, 17:58
the0m3n
 
Fecha de Ingreso: junio-2012
Mensajes: 2
Antigüedad: 11 años, 10 meses
Puntos: 0
Pregunta Ejecutar javascript en una página alterna

Hola a todos,

Tengo 3 páginas que interactúan entre sí.

La forma en que interactúan es la siguiente:
A través del archivo index.php se pasa el valor de una variable al archivo selectArea.js y este despliega la información del archivo getArea.php en la página principal.

Al realizar esto evito que se actualice toda la página, solamente hace el refresh en una parte.
Todo funciona bien, sin embargo, si en el archivo getArea.php ejecuto alguna instrucción de javascript, este no me lo reconoce.

Tampoco me manda algún mensaje de error.

Alguien sabe por qué pasa esto? y más importante aún, cómo puedo ejecutar código de javascript en la página alterna?

Adjunto el contenido de los tres archivos:

index.php:
<html>
<head>
<script type="text/javascript" src="selectArea.js"></script>
</head>
<body>
<form name="prueba" method="post" action="guardar.php">
<table width="100%" border="0" align="center">
<tr><td>Codigo:<input type="text" name="codigo"/>&nbsp;<input type="button" name="agregar" value="Agregar" onClick="showArea(this.value,1)" /></td></tr>
</table>
<div id="txtHint"></div>
</form>
</body>
</html>
====================================
Archivo selectArea.js
var xmlhttp;

function showArea(str,id)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
var url="getArea.php";
url=url+"?q="+str;
url=url+"&id="+id;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}

function stateChanged()
{
if (xmlhttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlht tp.responseText;
}
}

function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
====================================
Archivo getArea.php
<?php
$id = $_GET['id'];
?>
<html>
<body>
<?php
if ($id == 1){
echo "DASM";
echo "<script>alert(''DASM')</script>";
}
?>
</body>
</html>
====================================

Quedo al pendiente de sus comentarios.
Gracias de antemano.

Saludos.

DASM