Hola , te recomiendo que uses jquery lo puedes bajar desde su pagina oficial dale jquery . com
por que usar esa librieria , es mas facil que usar ajax puro bueno al menos para mi es más facil un ejemplo te puedo dar para hacer lo que tu quieres , mira seria algo asi
Código index.html:
Ver original<html>
<head><title>Ejemplo de uso de jquery por paridin </title>
<!-- Incluimos la libreria jquery -->
<script languaje="javascript" type="text/javascript" src="jquery"></script>
<script languaje="javascript" type="text/javascript" >
<!-- Crearemos la funcion que tu utilizas -->
function cargarPHP(){
var nombre = document.getElementById('nombre');
var edad = document.getElementById('edad');
var selec = document.getElementById('selec');
$.ajax( {
async:true,
dataType: "html",
type: "POST",
url: "phpresultado.php",
data: "nombre="+nombre+"&edad="+edad+"&selec="+selec,
global: true,
ifModified: false,
processData:true,
contentType: "application/x-www-form-urlencoded",
success: function(datos){
$("#resultado").html(datos);
}
});
} // EDITADO FALTABA ESTE CIERRE DE FUNCION POR ESO GENERABA ERROR LO SIENTO :( SOMOS HUMANOS
</script>
</head>
<body>
<h1> mostrar resultado de php en una etiqueta</h1>
Usaremos la etiqueta DIV sin embargo debe resultar en cualquier etiqueta
<form name="form1" id="form1" action="#" method="post" >
nombre <input type="text" name="nombre" id="nombre" /> <br />
edad <input type="text" name="edad" id="edad" /> <br />
mostrar edad o nombre:
<input type="radio" name="selec" value="nombre" id="selec"/> Nombre
<input type="radio" name="selec" value="edad" id="selec"/> edad
<input type="button" name="boton" value="Cargar resultado del php"> onclick="cargarPHP()" />
</form>
<div id="resultado">Aqui cambiara al hacer click del link</div>
</body>
</html>
phpresultado.php
Código PHP:
<?
if($_POST['selec'] == 'nombre'){
echo "Tu nombre es :" . $_POST['nombre'] ;
}else{
echo "Tu edad es :" . $_POST['edad'] ;
}
?>
checalo y me dices que te parece un saludo por cierto revisando tu codigo para llamar a un elemento del formulario debes hacer esto
Código:
document.getElementById('capa').innerHTML = " Aguarde por favor...";
y tu estas haciendo esto
Código:
document.getElementById(capa).innerHTML = " Aguarde por favor...";
Un saludo