Foros del Web » Programando para Internet » Javascript »

hacer sumatoria de campos de texto ...

Estas en el tema de hacer sumatoria de campos de texto ... en el foro de Javascript en Foros del Web. Estimados, estoy luchandocon una funcion, no puedo sumar los campos de texto... he intentado autoincrementar cada input, me refiero a sumar un valor a su ...
  #1 (permalink)  
Antiguo 21/10/2012, 00:02
 
Fecha de Ingreso: febrero-2012
Mensajes: 163
Antigüedad: 12 años, 9 meses
Puntos: 0
hacer sumatoria de campos de texto ...

Estimados, estoy luchandocon una funcion, no puedo sumar los campos de texto...

he intentado autoincrementar cada input, me refiero a sumar un valor a su nombre para luego en un for o un while hacer la suma.. pero no puedo...

la otra opción que intenté es en la funcion AGREGAR ir sumando de inmediato pero tampoco he podido hacerlo en tiempo real además cuando suma siempre me suma el primer input

esta es la función que está en una página llamada proceso

Código Javascript:
Ver original
  1. <script>
  2. function enviarData() {
  3. <?
  4. if ($nuevoCampo == 1) {
  5. echo "parent.document.getElementById( 'newFila' ).innerHTML += '<tr><td> ".$nombre." </td><td> ".$descripcion." </td><td><input type=\"text\" name=\"precio\" value=\" ".$precio." \"> </td></tr>';";
  6. }
  7. ?>
  8. }
  9. </script>

esta es la de la página principal

Código Javascript:
Ver original
  1. function addFila() {
  2. var idn = document.getElementById( 'idn' ).value;
  3. self.frames[ 'proceso' ].location.href = "proceso.php?add=si&id="+idn;
  4.  
  5. }

que me recomiendan hacer?, como lograré hacer la sumatoria de todos los campos "precio"?? en otro campo

les agradezco cualquier orientación...

saludos.
  #2 (permalink)  
Antiguo 21/10/2012, 06:33
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: hacer sumatoria de campos de texto ...

@neveuster
Si relaciono tu enunciado y el código expuesto, no se entiende nada, vas a tener que ser más preciso, y te aconsejo que pases tu html generado, ya que este es el foro de javascript.
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 21/10/2012, 10:21
 
Fecha de Ingreso: febrero-2012
Mensajes: 163
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: hacer sumatoria de campos de texto ...

Jeje, perdón por eso...

Bueno, lo que sucede es que tengo dos páginas, una es el index.php y la otra es proceso.php... arriba están las funciones de cada una..

En el index existe un fomulario con un campo de texto para consultar e la base de datos. proceso.php procesa la consulta y la envía a index.php y la agrega en un listado en una tabla, luego hago otra consulta y también se agrega al listado y asi consecutivamente...

mi problema es que cada linea que da asi..

Código:
nombre        descripcion        precio
nombre        descripcion        precio
nombre        descripcion        precio
como se ve, cada fila tiene los mismos campos de texto... los mismos nombres.

mi gran duda es, ¿como hacer para que cuando se procese la primera consulta, el campo de texto que se llama precio se agregue a otro nuevo campo de texto el que tendrá la sumatoria de todos los campos "precio" que se vayan agregando...???

he intentado agregar un "i=0; i++" en la función enviarData(); para lograr ... precio1, precio2, precio3... pero no me funciona.

he intentado en la función de index tomar el valor de precio y pasarlo al nuevo campo "total" pero siempre me toma la primera fila solamente...

¿que debo hacer?¿como lo hago?

saludos,espero se entienda mejor... muchas gracias!
  #4 (permalink)  
Antiguo 22/10/2012, 22:45
 
Fecha de Ingreso: abril-2011
Mensajes: 121
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: hacer sumatoria de campos de texto ...

Hey amigo, y si primero muestras los que quieres añadir al listado y después lo agregas? asi por lo menos mientras se este mostrando tomas el valor y vas sumandolo a un campo.
  #5 (permalink)  
Antiguo 23/10/2012, 01:03
 
Fecha de Ingreso: febrero-2012
Mensajes: 163
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: hacer sumatoria de campos de texto ...

Gracias, lo que pasa es que quiero hacer mas rápido el proceso de agregar un registro al listado, por eso lo quiero hacer asi... buscar y agregar, en vez de buscar, mostrar, agregar...

por eso les vuelvo a pedir la ayuda, ya que aún no puedo ir sumando el precio de cada fila.... muchas gracias.

saludos.
  #6 (permalink)  
Antiguo 23/10/2012, 20:46
 
Fecha de Ingreso: febrero-2012
Mensajes: 163
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: hacer sumatoria de campos de texto ...

pucha chiquillos ¿no se entendió? o ¿es muy dificil? o es muy tonto lo que estoy diciendo??? plop.
  #7 (permalink)  
Antiguo 23/10/2012, 21:44
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: hacer sumatoria de campos de texto ...

Sinceramente NO entiendo nada
Veamos, 2 páginas
Cita:
una es el index.php y la otra es proceso.php
en index

<form action="proceso.php" method="post">
<input type="text" name="x">
<input type="submit">
</from>

cuando hacés submit proceso.php consuta a la base de datos, es decir, recoge
$_POST['x'] y metés ese valor en un sql que por ahora no se sabe que hace, como sea el resultado de esa consulta es devuelto a index.php,
¿y eso como lo hacés? con Ajax?

Cita:
y la agrega en un listado en una tabla
agrega que? en dónde, en el index? haces un insert?

y después seguis con otras explicaciones que entiendo menos aún
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #8 (permalink)  
Antiguo 23/10/2012, 23:07
 
Fecha de Ingreso: febrero-2012
Mensajes: 163
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: hacer sumatoria de campos de texto ...

... estimados, disculpen, bueno para que se entienda de una vez, pongo las dos páginas. Les he puesto como nombres: 1.php y 2.php, index y proceso respectivamente. ... en la página 1.php hay un input fuera del form, en el quiero poner el "total" de los campos "precio"

1.php
Código:
<html>
<head>
<title>titulo</title>

<script>
function addFila() {
var idn = document.getElementById( 'idn' ).value;
self.frames[ 'proceso' ].location.href = "2.php?add=si&id="+idn;
}

onload=function(){
    setInterval(function(){if(window.parar)return; document.getElementById('boleta').scrollTop = document.getElementById('boleta').scrollHeight},100);
}
</script>
</head>
<body>

<form name="venta">
<input type="text" id="idn" value="">
<input type="button" id="buscar" value="Buscar" onClick="addFila()">
</form>

<div id="boleta">
    <table id="newFila" border="0" align="center">
    </table>
</div>

<input type="text" id="total" name="total" value="0">

<iframe id="proceso" name="proceso" src="about:blank" width="0" height="0" frameborder="0"></iframe>

</body>
</html>
2.php
Código:
<?php
$nuevoCampo = 0;
if ($_GET["add"] == "si") {
$id = $_GET["id"];

require("../conexion.php");

if (!$link) {
die('No pudo conectarse: ' . mysql_error());
}
mysql_select_db($db,$link);

$result = mysql_query( "select * from productos where codigo='$id'" );
$row = mysql_fetch_row($result);

if (mysql_error() == "" && count($row) > 1) {
$nombre = $row[5];
$descripcion = $row[1];
$precio = $row[6];
$nuevoCampo = 1;
}

mysql_close($link);
?>
<html>
<head>
<script>
num=0;
function enviarData() {
num++;
<?php
if ($nuevoCampo == 1) {
?>

parent.document.getElementById( 'newFila' ).innerHTML += '<tr><td colspan="2"> <?php echo "$nombre" ?> </td></tr><tr><td> <?php echo "$descripcion" ?> </td><td><input type="text" name="numcliente" id="numcliente" class="numcliente" value="<?php echo "$precio" ?> \"></td></tr>';

<?php 
}
?>
}
</script>

<body onLoad="enviarData()">
</body>
</html>
<?
}
?>
ojalá que ahora si se entienda, saludos y muchas gracias

Etiquetas: campos, funcion, html, input, php, sumatoria
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 11:51.