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

Ayuda para principiante!!

Estas en el tema de Ayuda para principiante!! en el foro de Frameworks JS en Foros del Web. Hola a todos .. como el asunto dice soy principiante en Ajax ... he leido bastante y además ejecutado en mi PC algunos ejemplos para ...
  #1 (permalink)  
Antiguo 01/10/2009, 06:55
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 11 años, 6 meses
Puntos: 8
Sonrisa Ayuda para principiante!!

Hola a todos .. como el asunto dice soy principiante en Ajax ... he leido bastante y además ejecutado en mi PC algunos ejemplos para ir familiarizándome .. el asunto es que decidí hacer mi primer AJAX por mi mismo, y estoy intentando hacer una paleta de colores, en la que el usuario puede seleccionar un color en la paleta y el mismo estrará en un combo de un form, hasta ahí todo bien, mi código es el siguiente:

formulario.php tengo:

<script language='javascript'>

function nuevoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}

if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}

function AsingaColor(color){
var contenedor;
contenedor = document.getElementById('contenedor');
ajax=nuevoAjax();
ajax.open("GET", "test.php?color="+color,true);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
contenedor.innerHTML = ajax.responseText
}
}
ajax.send(null)
}
</script>

<table>

<tr>
<td style="background-color: rgb(0, 0, 0); cursor: pointer;" onclick='AsingaColor("#000000")' width="14" height="14"></td>
<td style="background-color: rgb(0, 0, 51); cursor: pointer;" onclick='AsingaColor("#000033")' width="14" height="14"></td>
<td style="background-color: rgb(0, 0, 102); cursor: pointer;" onclick='AsingaColor("#000066")' width="14" height="14"></td>
******aca van muchos colores mas ....
</tr>
</table>

<br> <div id='contenedor'> </div>


y acá mi página que recibe test.php
<form action="" method="get">
<input name="" type="text" value="<?php $_GET['color']?>" />
</form>

¿mi problema?.. no funciona .. quizá estoy haciendo algo mal ... por favor una ayuda .. GRACIAS .. !!
__________________
-----------------------------------
Éxitos !!! .. joao
  #2 (permalink)  
Antiguo 01/10/2009, 15:20
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 11 años, 6 meses
Puntos: 8
Respuesta: Ayuda para principiante!!

hola otra vez :D... al final pude hacerlo .. les dejo el código para el que le pueda servir ... salu2:

pagina.php
<script>
function nuevoAjax()
{
/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
lo que se puede copiar tal como esta aqui */
var xmlhttp=false;
try
{
// Creacion del objeto AJAX para navegadores no IE
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
// Creacion del objet AJAX para IE
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E) { xmlhttp=false; }
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); }

return xmlhttp;
}

function asignarcolor(color)
{
// Obtengo la capa donde se muestran las respuestas del servidor
var capa=document.getElementById("resultado");
var B = document.getElementById('loading');//para poner el loading
// Creo el objeto AJAX
var ajax=nuevoAjax();
// Coloco el mensaje "Cargando..." en la capa
capa.innerHTML="Cargando...";
// Abro la conexión, envío cabeceras correspondientes al uso de POST y envío los datos con el método send del objeto AJAX
ajax.open("POST","pagina2.php", true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send("color="+color);

ajax.onreadystatechange=function(){
if(ajax.readyState==1){
B.innerHTML = "<img src='images/loading.gif' alg='Loading...'>";
}
if(ajax.readyState==4){
capa.innerHTML = ajax.responseText;
B.innerHTML = "";
}
}
}

</script>

<table cellpadding="0" cellspacing="0">
<tr>
<td style="background-color: rgb(0, 0, 0); cursor: pointer;" onclick='asignarcolor("#000000")' width="14" height="14">
</td>
<td style="background-color: rgb(0, 0, 51); cursor: pointer;" onclick='asignarcolor("#000033")' width="14" height="14">
</td>
<td style="background-color: rgb(0, 0, 102); cursor: pointer;" onclick='asignarcolor("#000066")' width="14" height="14">
</td>
*************acá se pueden poner tantos colores como desee
</tr>
</table>

<div id="resultado"></div>

pagina2.php
<form action="" method="post">
<input name="" type="text" value="<?php echo $_POST['color'];?>" readonly="true"/>
</form>

y listo !!!! tendremos una herramienta para que el usuario pueda elegir un color y el mismo poder enviarlo por un formulario .. espero les sirva .. salu2 !!!
__________________
-----------------------------------
Éxitos !!! .. joao
  #3 (permalink)  
Antiguo 09/06/2011, 10:32
Avatar de webcav  
Fecha de Ingreso: mayo-2011
Ubicación: Medellín - Colombia
Mensajes: 27
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Ayuda para principiante!!

Funciona a la perfección


muchas gracias
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 23:45.