PHP - Contar campos diligenciados (inputs) en form html

   
Vista:

Contar campos diligenciados (inputs) en form html

Publicado por DiegoF (3 intervenciones) el 28/07/2016 17:53:18
Buen dia, por favor su ayuda, como puedo contar los inputs y los option que va llenando y/o completando el usuario en un form, y al final en la parte de abajo del mismo firmulario me muestre la cantidad que vaya completando, espero me explique bien, gracias por su pronta respuesta.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip

Contar campos diligenciados (inputs) en form html

Publicado por kip (563 intervenciones) el 28/07/2016 21:16:05
Hola, aqui te dejo un ejemplo muy sencillo pero que se adapta a lo que necesitas, modificalo como desees:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<input type="text"></input>
<input type="text"></input>
<input type="text"></input>
<input type="text"></input>
<input type="text"></input>
<input type="text"></input>
<div id="result"></div>
<script>
$("input").change(function() {
	var sum = 0;
	$("input").each(function() {
		if($.trim($(this).val())){
			sum = sum + 1;
        }
	});
	if(sum>0){
		$('div#result').text('Has llenado '+sum+' inputs!');
    }
	else{
		$('div#result').text('');
    }
});
</script>

Por cierto use jQuery para lograr manejar los elementos del DOM, PHP no sirve para aquello ya que se ejecuta del lado del servidor, ten en cuenta eso.

Cualquier duda o problema nos comentas.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Contar campos diligenciados (inputs) en form html

Publicado por DiegoF (3 intervenciones) el 28/07/2016 23:06:31
Hola, Excelente, funciona, ahora estoy tratando de colocar el """"result""" dentro de un

<output disabled="disabled" type="text" id="result" name="no_componentes" class="form-control" /></div>

para que pueda almacenar ese dato en la BD.

modifique y coloque en esa linea id="result" en el formulario puedo observar el conteo pero al enviarlo a la BD almacena vacio.

en otras palabras como puedo llevar el resultado a ese output?

Nuevamente Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Contar campos diligenciados (inputs) en form html

Publicado por kip (563 intervenciones) el 28/07/2016 23:34:37
Hazlo de esta forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script>
$("input").change(function() {
	var sum = 0;
	$("input").each(function() {
		if($.trim($(this).val())){
			sum = sum + 1;
        }
	});
	if(sum>0){
		$('div#result').html('<output disabled="disabled" type="text" id="result" name="no_componentes" class="form-control" value= "'+sum+'"/>');
        }
	else{
		$('div#result').html('');
        }
});
</script>

De esa forma creas aquel elemento con el value correspondiente, en este caso el contenido del atributo value sera la variable sum.

Ahora bien si deseas insertar aquel valor de la variable sum dentro del tag output que esta dentro del div, puedes hacerlo de esta forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div id="result">
	<output disabled="disabled" type="text" id="result" name="no_componentes" class="form-control"/>
</div>
<script>
$("input").change(function() {
	var sum = 0;
	$("input").each(function() {
		if($.trim($(this).val())){
			sum = sum + 1;
        }
	});
	if(sum>0){
		$('div#result').find('output').text(sum);
        }
	else{
		$('div#result').find('output').text('');
        }
});
</script>

Nos cuentas como te va.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Contar campos diligenciados (inputs) en form html

Publicado por DiegoF (3 intervenciones) el 29/07/2016 20:30:21
Excelente, muchas gracias, solucionado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar