Foros del Web » Programando para Internet » Javascript »

Campos de texto dinamicos

Estas en el tema de Campos de texto dinamicos en el foro de Javascript en Foros del Web. Necesito que el valor numerico de un campo de texto se me vaya actualizando a medida que el usuario pulsa en dos botones, uno que ...
  #1 (permalink)  
Antiguo 02/04/2005, 14:30
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Campos de texto dinamicos

Necesito que el valor numerico de un campo de texto se me vaya actualizando a medida que el usuario pulsa en dos botones, uno que incremente su valor en 1 unidad y el otro que decremente su valor en 1 unidad.
Muchas gracias.
  #2 (permalink)  
Antiguo 02/04/2005, 15:13
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Hola, sería algo así:

Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<script>
function suma(){
    document.formulario.numero.value = eval(document.formulario.numero.value) + 1;
}
function resta(){
    document.formulario.numero.value = eval(document.formulario.numero.value) - 1;
}
</script>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form action="" method="post" name="formulario" id="formulario">
  <p>
    <input name="numero" type="text" id="numero">
  </p>
  <p>
    <input type="button" name="Button" value="suma" onClick="suma()">
    <input type="button" name="Button" value="suma" onClick="resta()">
  </p>
</form>
</body>
</html>
Espero que te sirva

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 02/04/2005, 17:28
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Mil gracias!! no sabes como me has ayudado, te lo agradecere por siempre!!.
  #4 (permalink)  
Antiguo 03/04/2005, 14:05
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Monoswim he probado el codigo y me funciona realmente de maravillas, pero me encuentro con un problema que no se como solucionarlo. Resulta que extraigo N registros de una base de datos con ASP, y cada uno de esos registros llevan consigo este formulario simple que indica la cantidad del producto a elegir, el tema es que cuando tengo mas de 1 producto en el carro de compras el script me deja de funcionar y me da error. Seguramente pienso que es porque no puede identificar bien el nombre del campo de texto. Teniendo en cuenta eso, intente cambiar el nombre dinamicamente al campo de texto, es decir, que el nombre de cada uno de los campos de texto lleve un nombre especifico, pero asi tampoco me funciona. Que me dirias respecto a esto que te dije? sabes como solucionarlo?. Muchas gracias de ante mano.
  #5 (permalink)  
Antiguo 03/04/2005, 14:47
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
El nombre del campo de texto debe ser siempre el mismo...Si el input lo creas desde tu ASP debes checkear que tenga el mismo nombre...

Ahora bien si el valor del texto es nulo seguramente te tire error ya que no puede sumar nulo + 1, así que debes verificar eso, así que solo sume si el aval() no es nulo...

Saludos
__________________
Esteban Quintana
  #6 (permalink)  
Antiguo 03/04/2005, 15:48
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Monoswim muchas gracias por seguir respondiendo mis consultas, eres de mucha ayuda para mi. En cuanto al script sigue sin funcionarme. Te comento que el valor del texto nunca es nulo, porque ni bien lo agrego al carro de compras al producto ya lleva el valor por default de uno, y luego, luego de actualizar la cantidad, carga el nuevo valor en el mismo campo de texto. Por otra parte, modifique un poco el script para que si el campo de texto tiene el valor de 1 entonces deje de ejecutar la funcion resta, por lo tanto me aseguro que nunca tenga un valor nulo. Ahora bien, yo al mostrar los registros de la base de datos los mostraba con un bucle for each... y dentro de ese bucle estaba el formulario. Saque las etiquetas <FORM></FORM> del bucle, y me dejo de dar error el script, pero tampoco me funciona ningun boton. Sinceramente no se que mas hacer!!!, por favor te pido que me des auqnue sea una pista mas, que te parece que puede ser??, igualmente muchas gracias por todo lo que me has ayduado, sinceramente lo digo.
Lo dicho, gracias Monoswim.
  #7 (permalink)  
Antiguo 03/04/2005, 18:25
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Mira, la etiqueta form tiene el nombre del formulario, con lo cual si lo sacas la función suma no sabrá cual es el formulario en dondee está el input con el numero para sumar

Fijate que en

document.formulario.numero.value

está el nombre del formulario que en este caso es formulario y está numero que es el nombre del input...

Para hacer un foreach y no duplicar el form debes hacer (te lo pongo con sintaxis de perl, pero básicamente es lo mismo)

print '<form name="formulario" action="script.cgi">';
foreach $item (@array) {
print '<input ...>';
}
print '</form>';

Se entiende la lógica ?

Las etiquetas form y /form las colocas afuera del foreach para que todo lo de adentro quede en el formulario...

Espero que te sirva

Saludos
__________________
Esteban Quintana
  #8 (permalink)  
Antiguo 03/04/2005, 20:04
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años, 1 mes
Puntos: 9
Viendo tu ultimo mensaje me quede totalmente resignado, aunque mantengo una ultima esperanza para ver si se puede hacer. Resulta que yo al formulario no lo puedo sacar del bucle y te explico porque. El metodo ACTION del formulario me dirige a una pagina que si o si le tengo que pasar el Id del producto, y obviamente, si no lo pongo al formulario dentro del bucle no podre sacar el Id, por lo tanto es tecnicamente imposible sacar el formulario del bucle en este caso. Ahora te pregunto con mi ultima esperanza, imaginas alguna otra forma de hacerlo?... espero una respuesta positiva!!!, ah y Monoswim, nuevamente mil gracias, no quiero ser reiterativo, pero en serio estoy totalmente agradecido con vos. Valoro mucho el hecho de que intentes solucionarme mi problema, es realmente valorable, por eso gracias.
SAludos!.
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 18:54.