Foros del Web » Programando para Internet » Javascript »

escribir desde javascript en un textbox

Estas en el tema de escribir desde javascript en un textbox en el foro de Javascript en Foros del Web. muy buenas! el problema que yo planteo aquí es un poco enravesado, por eso si es que alguien no lo entiende bien que me lo ...
  #1 (permalink)  
Antiguo 14/02/2007, 02:07
 
Fecha de Ingreso: noviembre-2006
Ubicación: Alicante
Mensajes: 107
Antigüedad: 17 años, 5 meses
Puntos: 0
escribir desde javascript en un textbox

muy buenas! el problema que yo planteo aquí es un poco enravesado, por eso si es que alguien no lo entiende bien que me lo diga y se lo intento explicar mejor.

empezamos...

voy a crear varios documentos php tipo formulario, en donde tendrá la posibilidad el usuario de introducir la fecha a mano o hacer click en un botón donde abrirá un nuevo documento emergente en donde podrá selecionar la fecha. la idea es ir pasando el nombre del componente para después por javascript escribir en el textbox correspondiente.

por javascript el tipo de objeto que me llega es object htmlcollection y no tiene muchas propiedades y metodos para trabajar con el.

gracias.
  #2 (permalink)  
Antiguo 14/02/2007, 02:21
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: escribir desde javascript en un textbox

Hola:

Creo que quieres re-utilizar el código para insertar fechas en distintos controles (y tal vez distintos formularios)... Se me ocurre que puedes abrir esas ventanas con parámetros del tipo GET para indicarle a tu ventana donde dejarlos luego...

<button type="button" onclick="window.open('calendario.php?formulario=' + this.form.name + '&campo=fecha1')" >fecha1</button>

Y en calendario.php enviar los datos más o menos así:
opener.document.forms[$_GET["formu"]] [$_GET["campo"]].value = fecha();

Si es otra cosa, danos un aviso...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 14/02/2007, 02:31
 
Fecha de Ingreso: noviembre-2006
Ubicación: Alicante
Mensajes: 107
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: escribir desde javascript en un textbox

si, la idea es esa, pero el problema lo tengo al intentar escribir desde javascript en el control. pongo mi código para que se pueda analizar.

S2.

HTML :

<form name="formnuevaoferta" method="post" action="paginas/insertarnuevaoferta.php">
<table width="500" height="300" border="1">
<tr>
<td width="200"> Fecha Entrada </td>
<td width="200"><input type="text" name="fentrada" /></td>
<td width="100"><img src="imagenes/cal.gif" onclick="abrirCal('fentrada')" /></td>
</tr>
<tr>
<td> Fecha Salida </td>
<td><input type="text" name="fsalida" /></td>
<td><img src="imagenes/cal.gif" onclick="abrirCal('fsalida')"/></td>
</tr>
<tr>
<td> Precio </td>
<td><input type="text" name="precio" /></td>
<td> </td>
</tr>
<tr>
<td> Texto 1 </td>
<td><textarea name="txt1"></textarea></td>
<td> </td>
</tr>
<tr>
<td> Texto 2 </td>
<td><textarea name="txt2"></textarea></td>
<td> </td>
</tr>
<tr>
<td><input type="submit" name="enviar" value="Enviar" /></td>
<td><input type="reset" name="borrar" value="Borrar" /></td>
<td> </td>
</tr>
</table>
</form>

parte del calendario que llama a la funcion :

/* Se pintan los días a partir del primero. */
while ($cont2 <= $mes){
$cont1++;

if ($cont2 == $fecha['mday'])
echo("<td class='hoy'><div id='capa" . cont2 . "' onclick=saberCampo('" . $campo . "')>" . $cont2 . "</div></td> \n");
else
echo("<td class='otro'><div id='capa" . cont2 . "' onclick=saberCampo('" . $campo . "')>" . $cont2 . "</div></td> \n");

if ($cont1 == 7){ // Si cont1 vale 7 pasamos a dibujar la siguiente fila y lo volvemos a inicializar.
$cont1 = 0;
echo("</tr> \n");
echo("<tr> \n");
}

$cont2++;
}


función javascript:

function saberCampo(p_cad){
var obj = document.getElementsByName(p_cad);

window.close(url);

alert(obj);
//alert(p_cad + ' - fentrada');
/*if (obj.namedItem('fentrada').value == '')
alert(obj);
else
alert('no');*/
}
  #4 (permalink)  
Antiguo 14/02/2007, 02:50
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: escribir desde javascript en un textbox

Hola:

No sé si lo estás probando con explorer, pero ese navegador implementa muy mal el método getElementsByName(), ya que en vez de buscar por nombre busca por el id... tal vez sea mejor que pongas un id a los elementos...y usar el método getElementById() que funciona muy bien en todos los navegadores.
Por otro lado, si saberCampo está definido en la página principal y lo llamas desde una ventana deberías anteponerle "opener."

La verdad es que el código me parece algo confuso.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 14/02/2007, 02:59
 
Fecha de Ingreso: noviembre-2006
Ubicación: Alicante
Mensajes: 107
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: escribir desde javascript en un textbox

el codigo lo pruebo en firefox i en explorer y saberCampo está definido en una hoja aparte donde va todo el código. yo tb creo que está un poco confuso, pero no se me ocurre otra forma de hacerlo. llego hasta saberCampo y en p_cad puedo ver el nombre del control, pero no se como acceder a el.

gracias por la respuesta.
  #6 (permalink)  
Antiguo 14/02/2007, 03:30
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: escribir desde javascript en un textbox

Hola:

Si usas el atributo name, deberías obtenerlo desde el objeto form asociado... si solo tienes uno sería:
document.forms[0][p_cad]... por ejemplo seguido de .value...

Si es otro caso te recomiendo que uses un atributo id y el método document.getElementById()... y por cierto, ese id no debe repetirse.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 14/02/2007, 06:51
 
Fecha de Ingreso: noviembre-2006
Ubicación: Alicante
Mensajes: 107
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: escribir desde javascript en un textbox

no lo he conseguido, probaré otras vías.

gracias por la ayuda y el tiempo empleado.
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 00:20.