Professional Documents
Culture Documents
each()
10 febrero, 2013 Ferchu Javascript / Ajax, JquerySin comentarios
Ahora deberamos crear una funcin de Javascript que recorra cada uno de
esoscheckbox por su nombre de class producto y preguntando si cada elemento
est tildado. Algo como esto:
function verificarProductosSeleccionados(){
var resultado = false;
$(".producto").each(function(){
if($(this).is(':checked')){
resultado = true;
}
});
return resultado;
}
Ahora repasemos, tengo una variable de nombre resultado que ser la encargada
de devolver true si hay al menos un producto tildado y false si no hay ninguno.
Luego levantamos todos los checkbox con el nombre class producto y
preguntamos si el mismo est tildado (is(:checked)) en caso de que lo est, la
variable resultado pasar a igualarse a true, tal vez haya ms de uno tildado y
cambiar varias veces el valor de la variable, pero siempre a true.
Una vez finalizado el bucle .each() tendremos el valor de nuestra variable que nos
indicar si encontr alguno tildado o no. Esta funcin debera dispararse al presionar
el botn. El cdigo quedara:
<!DOCTYPE html>
<html>
<head>
</body>
</htm
$(elemento).val()
JavaScript
<script type='text/javascript'
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#boton01").click(function () {
//saco el valor accediendo a un input de tipo text y name = nombre
alert($('input:text[name=nombre]').val());
//saco el valor accediendo al id del input = nombre
alert($("#nombre").val());
//saco el valor accediendo al class del input = nombre
alert($(".nombre").val());
});
});
</script>
Saco un primer alert accediendo al valor del input texto con name =
nombre.
Termino con otro alert accediendo al valor del input texto con class =
nombre.
<script type='text/javascript'
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#boton02").click(function () {
//saco el valor accediendo a un input de tipo text y name = nombre2 y lo asigno a uno
con name = nombre3
$("#nombre3").val($("#nombre2").val());
});
});
</script>
<script type="text/javascript">
$(document).ready(function(){
$("select[name=color1]").change(function(){
alert($('select[name=color1]').val());
$('input[name=valor1]').val($(this).val());
});
$("#ejemplo2").change(function(){
alert($('select[id=ejemplo2]').val());
$('#valor2').val($(this).val());
});
$(".ejemplo3").change(function(){
alert($('select[class=ejemplo3]').val());
$('.valor3').val($(this).val());
});
});
</script>
Este mtodo es una sencilla manera de obtener datos del servidor desde
el mismo HTML, aunque se parece mucho a $.get(url, data, success) ,
solo que la primera es un mtodo y la segunda es una funcin global.
En las demos que os pongo a continuacin vamos a forzar dicha carga
externa mediante el mtodo jQuery Click(), que se ejecutar cuando se
pulse el botn.
<html>
<head>
<title>jQuery Load</title>
<!-- Libreria jQuery -->
<script type='text/javascript'
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<!-- Accin sobre el botn con id=boton y actualizamos el div con id=capa -->
<script type="text/javascript">
$(document).ready(function() {
$("#boton").click(function(event) {
$("#capa").load('/demos/03-jquery-load01.php');
});
});
</script>
</head>
<body>
<div id="capa">Pulsa 'Actualizar capa' y este texto se actualizar</div>
<br>
<input name="boton" id="boton" type="button" value="Actualizar capa" />
</body>
</html>
<html>
<head>
<title>jQuery Load</title>
<!-- Libreria jQuery -->
<script type='text/javascript'
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<!-- Accin sobre el bot con id=boton y actualizamos el div con id=capa -->
<script type="text/javascript">
$(document).ready(function() {
$("#boton").click(function(event) {
$("#capa").load("/demos/2013/03-jquery-load03.php",
{valor1:'primer valor', valor2:'segundo valor'}, function(response, status, xhr) {
if (status == "error") {
var msg = "Error!, algo ha sucedido: ";
$("#capa").html(msg + xhr.status + " " +
xhr.statusText);
}
});
});
});
</script>
</head>
<body>
<div id="capa">Pulsa 'Actualizar capa' y este texto se actualizar</div>
<br>
<input name="boton" id="boton" type="button" value="Actualizar capa" />
</body>
</html>
<html>
<head>
<title>jQuery Load</title>
<!-- Libreria jQuery -->
<script type='text/javascript'
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<!-- Accin sobre el bot con id=boton y actualizamos el div con id=capa -->
<script type="text/javascript">
$(document).ready(function() {
$("#boton").click(function(event) {
$("#capa").load('/demos/2013/03-jquery-load05.php
#contenido');
});
});
</script>
</head>
<body>
<div id="capa">Pulsa 'Actualizar capa' y este texto se actualizar</div>
<br>
<input name="boton" id="boton" type="button" value="Actualizar capa" />
</body>
</html>
4. Podis probar la demo y ver que efectivamente solo coge el contenido del
id=contenido.