Foros del Web » Programando para Internet » Javascript »

actualizar campo de una form

Estas en el tema de actualizar campo de una form en el foro de Javascript en Foros del Web. hola, lo qu estoy tratando de hacer es multiplicar 2 campos de un form de tal manera que en un tercer campo se vea el ...
  #1 (permalink)  
Antiguo 24/07/2002, 09:23
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 23 años
Puntos: 0
actualizar campo de una form

hola, lo qu estoy tratando de hacer es multiplicar 2 campos de un form de tal manera que en un tercer campo se vea el resultado, el problema es que como son lineas de detalle y necesito registrarlas en una base de datos luego, los nombres de los campos terminan con [] y si se los pongo no me los acepta, y si no los pongo, me escribe en el teercer campo NaN (?) , y tengo el siguiente codigo

Código:
<tr><form name="linea2">
<td><b>2</b></td>
<td align="center">
<input type="text" name="aDet_codigo[]" size="10"></td>
<td align="center">
<input type="text" name="aDet_cantidad[]" size="3"  value=0 onChange="form.TotalLinea2.value=eval(this.value+form.aDet_precio.value)"></td>
<td align="center">
<input type="text" name="aDet_precio[]" size="4"  value=0 onChange="form.TotalLinea2.value=eval(this.value+form.aDet_cantidad.value)"></td>
<td align="center">
<input type="text" name="TotalLinea2" size="10" value=0></td>
</form></tr>
i need help, de antemano gracias!
  #2 (permalink)  
Antiguo 24/07/2002, 10:10
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 4 meses
Puntos: 381
Re: actualizar campo de una form

:) Buenas,

mira, si le sacas a los name los [] finales funciona todo correctamente. Si se le dejan los [] luego dice que hay error de sintaxis cuando se accede al nombre del campo.

Lo que puedes probar a hacer es:

Deja el formulario y sus names sin los []. Así no da error y suma lo que tiene que sumar. Luego, puedes crear una función que al submitir el formulario previamente se encarge de renombrar a los campos que no tenían el []

algo asi:

<script language="JavaScript">
function cambiarNombre()
{
document.linea2.aDet_cantidad.name="aDet_cant idad[]"
document.linea2.aDet_precio.name="aDet_precio[]"
document.linea2.TotalLinea2.name="TotalLinea2[]"
document.linea2.submit()
}


y luego en body en tu formulario:

<tr>
<td><form name="linea2" action="lo que sea" method="post">
<b>2</b></td>
<td align="center">

<input type="text" name="aDet_codigo[]" size="10"></td>


<td align="center">

<input type="text" name="aDet_cantidad" size="3" value=0 onChange="form.TotalLinea2.value=eval(this.va lue+form.aDet_precio.value)">

</td>
<td align="center">
<input type="text" name="aDet_precio" size="4" value=0 onChange="form.TotalLinea2.value=eval(this.va lue+form.aDet_cantidad.value)"></td>
<td align="center">
<input type="text" name="TotalLinea2" size="10" value=0>
<input type="button" onClick="cambiarNombre()"></td>
</form></tr>

En mi compu funcionó bién. Al submitir el formulario me mostraba todos los nombres de los campos terminados en []

Dime si te funcionó.

Suerte
  #3 (permalink)  
Antiguo 24/07/2002, 11:19
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 23 años
Puntos: 0
Re: actualizar campo de una form

Gracias por tomarte lamolestia de codear :)
y si, tu script funciona muy bien , pero mientras investigaba descubri algo y lo hice utilizando el parametro id del campo input , y funciono perfecto!, mira esto es lo que hice, a ver si a alguno le sirve...gracias =

Código:
<tr>
<td><b>2</b></td>
<input type="hidden" name="aDet_orden[1]" value="2"><td align="center">
<input type="text" id="codigo1" name="aDet_codigo[1]" size="10"></td>
<td align="center">
<input type="text" id=cant1 name="aDet_cantidad[1]" size="3" value=0 onChange="form.TotalLinea1.value=eval(this.form.prec1.value * this.value)"></td>
<td align="center">
<input type="text" id=prec1 name="aDet_precio[1]" size="4" value=0 onChange="form.TotalLinea1.value=eval(this.form.cant1.value * this.value)"></td>
<td align="center">
<input type="text" name="TotalLinea1" size="10" value=0 readonly tabindex = -1></td>
</tr>
  #4 (permalink)  
Antiguo 24/07/2002, 11:33
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 4 meses
Puntos: 381
Re: actualizar campo de una form

:) sip, lo del id también es una buena solución. Me lo planteé también pero finalmente opté por la otra opción puesto que getElementById en algunos navegadores no se reconoce (conste que soy la primera que usa el getElementbyid a todas horas) en cambio la otra forma de acceder a los campos es más segura.

Te mando un saludo :)

  #5 (permalink)  
Antiguo 24/07/2002, 12:25
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 23 años
Puntos: 0
Re: actualizar campo de una form

no conocia esa funcion, es que programando para el lado del cliente no tengo mucha experiencia :P

para que sirve?
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 01:35.