Foros del Web » Programando para Internet » Javascript »

validar un campo text al pulsar un boton de Grabar .Ayuda!!!

Estas en el tema de validar un campo text al pulsar un boton de Grabar .Ayuda!!! en el foro de Javascript en Foros del Web. Hola a todos, tengo un serio problema, lo llevo intentanto todo, os cuento: Mi codigo está en php Tengo en una tabla una serie de ...
  #1 (permalink)  
Antiguo 16/05/2006, 05:54
 
Fecha de Ingreso: mayo-2006
Mensajes: 1
Antigüedad: 18 años
Puntos: 0
validar un campo text al pulsar un boton de Grabar .Ayuda!!!

Hola a todos, tengo un serio problema, lo llevo intentanto todo, os cuento:
Mi codigo está en php
Tengo en una tabla una serie de ofertas que he saco de una consulta, estas ofertas son un formulario donde debo rellenar el campo precio, por lo tanto si relleno el campo precio mal quiero q me salga un mensaje de error.hasta ahi bien pero el problema es cuando tengo varias ofertas y por lo tanto varios botones de grabar, como distingo cada caja de texto del precio con su boton a la hora de meterlo en la funcion javascript de validar.

os muestro el codigo por si os aclarais mejor
Código PHP:
  $v=1;
   while($row = mysql_fetch_array($_pagi_result)){ 
                $tl=count($row);
                $_SESSION["total"]= $tl;
                echo" <tr bgcolor=\"#ffffff\">";
                
                $numofer=$row["num_oferta"];
                $lin=$row["num_linea"];
                $deno=$row["denominacion"];
                $precio=$row["precio"];
                $plazo=$row["plazo_entrega"];
                $lc=$row["lin_completa"];
                
                if($lc==1)
                {
                    echo "<td width=\"20\">$numofer</td>";
                    echo "<td width=\"20\">$lin</td>";
                    echo "<td >$deno</td>";
                    echo "<td> $precio</td>";
                    echo "<td> $plazo</td>";
                }   
                else{
                echo "<td width=\"20\" onmouseover=\"cambiar_color_over(this)\" onmouseout=\"cambiar_color_out(this)\"> $numofer</td>";
                echo "<td onmouseover=\"cambiar_color_over(this)\" onmouseout=\"cambiar_color_out(this)\" > $lin</td>";
                echo "<td onmouseover=\"cambiar_color_over(this)\"  onmouseout=\"cambiar_color_out(this)\"> $deno</td>";
?>
                <FORM action="grabar.php?id_lin=$lin&id_ofer=<?php echo $numofer?>" method="post" name="fvalida<?php echo $v?>"> 
                <td><INPUT TYPE="text" NAME="precio<?php echo $v?>" SIZE=10 MAXLENGTH=20 value="<?php echo $precio ?>">
                </td>
                <td>
                        <input type="text" name="date" id="campo_fecha<?php echo $v ?>" value="<?php echo $date ?>" /> 
                          <input type="button" id="lanzador<?php echo $v ?>" value="..." />
                    
                      <script type="text/javascript"> 
                           Calendar.setup({ 
                        inputField     :    "campo_fecha<?php echo $v ?>",     // id del campo de texto 
                         ifFormat     :     "%d/%m/%Y",     // formato de la fecha que se escriba en el campo de texto 
                         button     :    "lanzador<?php echo $v ?>"     // el id del botón que lanzará el calendario 
                        }); 
                        </script>
                      <script Language="JAVASCRIPT">
                function valida_envia(envprefe){ 
                //valido el precio
              if (preciob.value < 0){ 
                           alert("Tiene que escribir un precio correcto") 
                           document.nombre.focus() 
                           return 0; 
                        } 
                          //el formulario se envia 
                          alert("Muchas gracias por cumplimentar <?php echo $v?>"); 
                    
                
                
               }
  </script>
           <input type="button" onClick="valida_envia(this,precio)" name="envprefe<?php echo $v ?>"  value="GRABAR<?php echo $v?>"/></td>
                      <? 
                    
//  echo " <input type=\"button\" onClick=\"valida_envia()\" name=\"envprefe\" value=\"GRABAR\"/></td>";
?>

  
<?  
                      
echo "</form></tr>";
                      
                      
$v++;
                    }
  #2 (permalink)  
Antiguo 16/05/2006, 09:30
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
por lo que veo tenés parejas de input-botón con nombres precioX-lanzadorX, deberías aprovechar eso. Analizar el id del botón pulsado, obtener el último caracter (bueno, mejor los que estén luego de la palabra "lanzador". Suponiendo que tenés esos caracteres en una variable "NUM", luego podés analizar los datos ingresados en "precioNUM"

como esquema, quedaría:
el botón llama a la función primera() con "this.id" como parámetro....

function primera(id) {
var NUM = (obtenés el número);
validar("precio"+NUM);
}

function validar(campo) {
acá validás el campo....
}

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 08:33.