jQuery permite seleccionar elementos envolviéndolos en $(' '). También se pueden usar comillas dobles, $(" ") y poniendo entre las comillas, selectores. En este articulo veremos algunos selectores simples de jQuery, para seleccionar elementos de HTML.

Seleccionando todos los elementos de un tipo

$("xx") donde xx es el nombre de un tag HTML, selecciona todos los elementos del tipo xx. Por ejemplo $("div"), selecciona todos los divs en la página.

Veamos una página con este tipo de selector:

<!DOCTYPE html>
<html>
  <head>
   <title>Seleccionando todos los elementos p con jQuery</title>
   <script type="text/javascript" src="jquery-1.7.1.js"></script>
   <script type="text/javascript">
          $(document).ready(function(){
                $("p").css("border","3px solid red");
          });
   </script>
   <meta charset="utf-8" />
 </head>
 <body>
      <h1>Seleccionando los párrafos con jQuery</h1>
        <p>Primer párrafo.</p>
        <div>Este es un div</div>
        <br />
        <span>Este es un span</span>
        <p>Segundo párrafo</p>
    </body>
</html>

Cuando cargamos la página, el código jQuery se ejecuta, seleccionando los dos párrafos como vemos en la figura 1:/p>

Figura 1 - Seleccionando todos los <p> con jQuery ($("p"))

 

Nota: El código jQuery selecciona todos los elementos p en la página y para marcarlos de rojo usamos la función CSS(),a la que le pasamos como parámetros el estilo a aplicar y sus valores. En nuestro caso "border" y "3px solid red". Si quisiéramos cambiar mas de un estilo, lo hacemos pasándole un simple Map de pares key-value (Siguiendo la notación JavaScript). Por ejemplo si queremos cambiarle también el color de fondo a gris, ademas de ponerle un borde rojo sólido de 3px de ancho, escribimos lo siguiente:
$(document).ready(function(){
   $("div").css({"border":"3px solid red",
                 "background-color":"silver"});
    });

Seleccionando un elemento por Id

$("#xx") donde xx es el Id de un elemento en la página, selecciona el elemento cuyo id es xx. Por ejemplo $("#parrafo1"), selecciona el párrafo cuyo id es párrafo1.

Veamos un ejemplo con este tipo de selector:

<!DOCTYPE html>
<html>
  <head>
   <title>Seleccionando un elemento por ID con jQuery</title>
   <script type="text/javascript" src="jquery-1.7.1.js"></script>
   <script type="text/javascript">
          $(document).ready(function(){
                $("#parrafo1").css("border","5px dashed red");
          });
   </script>
   <meta charset="utf-8" />
 </head>
 <body>
      <h1>Seleccionando por Id con jQuery</h1>
        <p>Primer párrafo.</p>
        <div>Este es un div</div>
        <br />
        <span>Este es un span</span>
        <p id="parrafo1">Segundo párrafo cuyo Id es parrafo1</p>
        <p id="parrafo2">Otro párrafo con Id parrafo2</p>
    </body>
</html>

Cuando cargamos la página, el código jQuery se ejecuta, seleccionando el párrafo cuyo id es parrafo1, como vemos en la figura 2:

Figura 2 - Seleccionando con jQuery un elemento por Id ($("#parrafo1" - elemento cuyo Id
es parrafo1)

 

Seleccionando un elemento por su clase CSS

$('.xx') donde xx es el nombre de clase de un elemento en la página, selecciona los elementos cuyas clases son xx. Por ejemplo $(".miclase"), selecciona los elementos con clase miclase.

Veamos un ejemplo con este tipo de selector:

<!DOCTYPE html>
<html>
  <head>
   <title>Seleccionando elementos por nombre de clase</title>
   <script type="text/javascript" src="jquery-1.7.1.js"></script>
   <script type="text/javascript">
          $(document).ready(function(){
                $(".miclase").css("border","5px dotted blue");
          });
   </script>
   <meta charset="utf-8" />
 </head>
 <body>
      <h1>Seleccionando por nombre de clase</h1>
        <p class="miclase">Primer párrafo.</p>
        <div class="miclase">Este es un div</div>
        <br />
        <span>Este es un span</span>
        <p id="parrafo1">Segundo párrafo cuyo Id es parrafo1</p>
        <p id="parrafo2" class="miclase">
                  Otro párrafo con Id parrafo2</p>
    </body>
</html>

Cuando cargamos la página, el código jQuery se ejecuta, seleccionando los elementos con clase CSS igual a miclase, como vemos en la figura 3:

Figura 3 - Seleccionando con jQuery, los elementos con clase CSS igual a "miclase" 
($(".miclase")(

 

Seleccionando elementos que son hijos de otros elementos

$('a > b') donde a y b son elementos en la página, selecciona los elementos b que son hijos o descendientes de a. Por ejemplo $("li > a"), selecciona los elementos "a" que son hijos de "li"s

Veamos un ejemplo con este tipo de selector, donde seleccionaremos los links que tengan clase "miclase" y que sean descendientes de elementos "li"s o sea $("li > a.miclase"):

<!DOCTYPE html>
<html>
  <head>
   <title>Seleccionando hijos</title>
   <script type="text/javascript" src="jquery-1.7.1.js"></script>
   <script type="text/javascript">
          $(document).ready(function(){
             $("li > a.miclase").css("border","5px dotted red");
          });
   </script>
   <meta charset="utf-8" />
 </head>
 <body>
      <h1>Seleccionando hijos</h1>
        <p class="miclase">Primer párrafo.</p>
        <div class="miclase">Este es un div</div>
        <br />
        <span>Este es un span</span>
        <p id="parrafo1">Segundo párrafo cuyo Id es parrafo1</p>
        <p id="parrafo2" class="miclase">
                  Otro párrafo con Id parrafo2</p>
 Algunas compañías de informática son&l;/p>
        <ul>
            <li><a href="http://www.oracle.com" 
                   target="_blank">Oracle</a></li>
            <li><a href="http://www.microsoft.com" 
                   target="_blank" 
                   class="miclase">Microsoft</a></li>
            <li><a href="http://www.ibm.com" 
                   target="_blank">IBM</a></li>
            <li><a href="http://www.google.com" 
                   target="_blank">Google</a></li>
        </ul>
    </body>
</html>

Cuando cargamos la página, el código jQuery se ejecuta, seleccionando los elementos a que tienen clase mi clase y que son hijos de elementos "li", como vemos en la figura 4:

Figura 4 - Seleccionando con jQuery los enlaces "<a>" con clase "miclase", que son hijos de
algún elemento "li" ($("li > a.miclase"))

Seleccionando múltiples elementos

Podemos hacer multiples selecciones con un mismo selector. Por ejemplo: $('p, #primero, h1.principal'), selecciona todos los párrafos, el elemento con Id primero y los h1 que tengan clase principal.

Veamos un ejemplo de selección múltiple, que seleccionará todos los párrafos, los encabezados h2 con clase principal y el elemento con id primero:

<!DOCTYPE html>
<html>
  <head>
   <title>Selecciones múltiples con jQuery</title>
   <script type="text/javascript" src="jquery-1.7.1.js"></script>
   <script type="text/javascript">
   $(document).ready(function(){
      $("p, #primero, h2.principal").css(
             {"background-color":"darkblue",
               "color":"yellow"});
     });
   </script>
   <meta charset="utf-8" />
 </head>
 <body>
      <h1>Selecciones múltiples con jQuery</h1>
      <h4>En este ejemplo usamos un selector múltiple, que
        selecciona todos los párrafos, los encabezados h2 con
       <br/> clase principal y el elemento con id 
       primero.</h4> 
       <h2 class="principal">Un encabezado h2 (será marcado 
       por ser h2 con clase principal)</h1>
        <p>Un párrafo(será seleccionado como todos
       los párrafos)</p>
        <div>Este es un div</div>
        <br />
        <div id="primero">Este es otro div, que será
        marcado por tener id primero</div>
        <br />
        <div>Este es otro div</div>
        <p>Otro párrafo (será seleccionado como 
        todos los párrafos)
        <h2>Otro h2 que no será seleccionado por 
        no ser clase principal</h2>
        <div>Este es otro div</div>
    </body>
</html>

Cuando cargamos la página, el código jQuery se ejecuta, seleccionando todos los párrafos, los encabezados h2 con clase "principal" y el elemento con id "primero", como vemos en la figura 5:

 

Figura 5 - Selecciones múltiples con jQuery

En el artículo Selectores avanzados de jQuery, y en el Lista Completa de Selectores de jQueryveremos otros selectores más avanzados.

jQuery, permite a través de los selectores, seleccionar elementos de HTML (como hemos visto en este artículo). Además jQuery tiene selectores de CSS3, pseudo-selectores y selectores personalizados.

respag   
Panamá © 2012
Haga su donación para colaborar con La Escuela del Programador

La Escuela del Programador es un sitio web sin anuncios, sin ánimo de lucro, no es un sitio web comercial. Es el sueño de compartir con todos, muchos años de una gran pasión. Si realmente encuentra este sitio útil y lo aprovecha, le pido su generosa y no importa cuán modesta colaboración, simplemente para afrontar los costos de mantener este sitio disponible en internet.
No deseo lucrar con este sitio, ya que lo hago desinteresadamente, sólo le pido que, si puede, aporte (desde un dólar hasta lo que crea que puede dar), para afrontar los costos de dominio y hosting. Muchísimas gracias y ojalá juntos podamos hacer un sitio que sea una buena fuente de aprendizaje de programacíon en español.

Si no se siente en condiciones de colaborar, igualmente será bienvenido al sitio, es libre para todos y será un placer que encuentre mis artículos provechosos, pero si realmente me ayuda con una donación minima, seguramente, colaborará para que La Escuela del Programador se mantenga en la Web y crezca, conviertiendo a este sitio hecho con mucha pasión, dedicación y esfuerzo, en una buena fuente de aprendizaje.

Mis saludos cordiales y gracias por interesarse en mi sitio.

Rubén E. Spagnuolo
respag
Panamá - © 2012