hola antes que nada me sirvio mucho este caso el problema en mi caso es que yo lo aplico para validar
"si se selecciono el check por ende debe escribir una cantidad en su respectiva caja de texto" sinembargo si aplico esa funcion de validar en la misma pag si me fuenciona de diez pero yo lo que hice es hacer un script (.js) y mandarlo llamar en la pag cuando le de click al boton de enviar el cual llama a la funcion con
return valida (
this) y ese parametro lo recogo con la letra
F en la funcion es alli donde tengo el problema porq ya no reconoce las intrucciones ya intente con todos los casos expuesto y no anda
Código HTML:
Ver original<FORM name="form1" ACTION="Insert.php" METHOD="POST" onsubmit="return valida(this);">
<B>Nombrel:
</B><input name="nom_cok" type="text" />
<table width="280" border="0"> <td width="135"><b>Pieza
</b></td> <td width="135"><b>Cantidad
</b></td> <td><input type="checkbox" name="cat_al[1]" value="1" id=al1 /></td> <td><input type="text" name="can_oz_al[1]" size="5" id=oz1 value="0.0" onClick='this.value="";'/ > //limpia el valor al darle click
<td><input type="checkbox" name="cat_al[2]" value="2" id=al2 /> <td><input name="can_oz_al[2]" type="text" size="5" value="0.0" id=oz2 onClick='this.value="";'/> <td><input type="checkbox" name="cat_al[3]" value="3" id=al3/> <td><input name="can_oz_al[3]" type="text" size="5" value="0.0" id=oz3 onClick='this.value="";'/> <Td><input type="checkbox" name="cat_al[4]" value="4" id=al4 onClick='this.value="";'/> <Td><input name="can_oz_al[4]" type="text" size="5" value="0.0" id=oz4 onClick='this.value="";'/> <input type="submit" value="Enviar" />
Código PHP:
Ver original<script language="JavaScript">
function vacio(q) {
for ( i = 0; i < q.length; i++ ) {
if ( q.charAt(i) != " " ) {
return true;
}
}
return false;
}
function ComprobarNumero(k) {
var i;
for (i = 0; i < k.length; i++)
{
if (k.charCodeAt(i) < 48 || k.charCodeAt(i) > 57 || k.k.charCodeAt(i) != 46)
{
return false;
}
}
return true;
}
function valida(f){
alert("Etro a la funcion");
var a=document.form0.length;
var s=0;
var c=0;
var n=0;
var checados = false;
var cantidadCheckbox = 5;
var objFormulario = document.forms["form0"];
for (contadorElementos=1;contadorElementos<cantidadCheckbox;contadorElementos++)
{
var actualName = "cat_al[" + contadorElementos + "]";
var actualCheckbox = objFormulario.elements[actualName];
var actualNametxt = "can_oz_al[" + contadorElementos + "]";
var actualtxt = objFormulario.elements[actualNametxt];
if (actualCheckbox.checked == true)
{
c++;
if(vacio(document.forms["form0"].elements["can_oz_al[" + contadorElementos + "]"].value) == true ){
s++;
}else {
alert("caja vacia");
return false;
}
if(ComprobarNumero(document.forms["form0"].elements["can_oz_al[" + contadorElementos + "]"].value) == true ){
n++;
}else{
alert("Escirba Numeros solamente en las cantidad");
return false;
}
}
}
alert ("cantidad de cajas texto ="+ s);
alert ("cantidad de cajas check="+ c);
alert ("contador de funcion numero =" + n);
alert("OK2");
return true;
}
</script>
Esto lo hace a la perfeccion cuando se encuentra en la misma pag pero si lo llamo como funcion .js ya tengo problemas solo valida el del campo de nombre y de allo se salta todo