Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Ejemplo sencillo - Principiante con XAJAX

Estas en el tema de Ejemplo sencillo - Principiante con XAJAX en el foro de Frameworks JS en Foros del Web. Bueno he empezado (ayer empecé) a aprender a utilizar ajax, mi primer código intenta permitir que un título se convierta en un campo de texto ...
  #1 (permalink)  
Antiguo 14/01/2006, 16:04
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Ejemplo sencillo - Principiante con XAJAX

Bueno he empezado (ayer empecé) a aprender a utilizar ajax, mi primer código intenta permitir que un título se convierta en un campo de texto y un botón de guardar que modifique el título y lo vuelva a mostrar como antes pero con el nuevo texto.

A continuación pongo el código completo. Tener en cuenta que estoy utilizando XAJAX.

Código HTML:
<?
session_start();
require_once("xajax/xajax.inc.php");
$xajax = new xajax();
$xajax -> registerFunction("guardarTit");
function guardarTit(){
$_SESSION['titulo']=$_GET['tit'];
$objResponse = new xajaxResponse();
$objResponse -> addAssign("cabecera", "innerHTML", "<h3 id='tit' onclick='xajax_mostrarForm()'>".$_SESSION['titulo']."</h3>");
return $objResponse->getXML();
}
$xajax -> processRequests();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<script>
function cambiarTit(){
	var formTit = document.createElement("form");
	formTit.setAttribute('id','formTit');
	var input = document.createElement("input");
	input.setAttribute('type','text');
	input.setAttribute('id','titulo');
	input.setAttribute('name','tit');
	input.setAttribute('value', document.getElementById("tit").firstChild.nodeValue);
	var input2 = document.createElement("input");
	input2.setAttribute('type','submit');
	input2.setAttribute('id','guardar');
	input2.setAttribute('value', 'Guardar');
	input2.setAttribute('onclick', 'xajax_guardarTit(xajax.getFormValues("formTit"))');
	formTit.appendChild(input);
	formTit.appendChild(input2);
	document.getElementById("cabecera").replaceChild(formTit, document.getElementById("tit"));
}
</script>
<?php $xajax -> printJavascript("/Pruebas/xajax/");?>
</head>

<body>
<div id="cabecera">
  <h3 id="tit" onclick="cambiarTit()">T&iacute;tulo</h3>
</div>
</body>
</html> 
Al parecer todo esta bien hasta que le das a guardar. Efectivamente se recibe el nuevo título y se le asigna a la sesión pero cuando tiene que cambiar el formulario por el nuevo texto sucede algo muy raro:

Se pone el título correctamente y luego (al cabo de medio segundo) vuelve al estado inicial, es decir, vuelve a poner "Título".

La verdad es que no tengo ni idea de qué puede estar pasando y levo todo el día en este "simple" ejemplo.

Espero que podais ayudarme! Estoy demasiado perdido...

Saludos,
__________________
sergiold
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:48.