javascript: seleccionar valor de una clase dentro de un div

Iniciado por JonaLamper, 24 Septiembre 2016, 13:20 PM

0 Miembros y 2 Visitantes están viendo este tema.

JonaLamper

Buenas,

Tengo el siguiente código HTML:

Código (html4strict) [Seleccionar]

              <div class="col-xs-6 elementoInterior" id="id12">
        <div class="col-xs-6">
        <img src="./Imagenes/rusia.png" class="bandera"/>
        </div>
        <div class="col-xs-6 texto">
        <span class="nombre">Petrosian</span>
               <span class="puntos">2730</span>
        </div>
        </div>


Y quiero, a través de JS, seleccionar el valor dentro de la clase .puntos (o sea, quiero obtener el valor 2730).  El código que tengo en JS es este, pero no me funciona:

Código (javascript) [Seleccionar]

                $("div").click(function() {
               // Obtenemos el 'id' del elemento this
                   var identificador = $(this).attr('id');
                   identificador = "#" + identificador;
               // Obtenemos los puntos Elo del elementos this
                   var prueba = $('identificador div span.class puntos');
                   alert(prueba);
                });


He probado bastantes formas de sacar el valor de la clase, pero nada. ¿Alguien sabe cómo podría hacerlo?

Muchas gracias  ;D
Utilizar palabras para hablar de palabras es como utilizar un lápiz para hacer un dibujo de ese lápiz sobre el mismo lápiz.

ivancea96

Código (javascript) [Seleccionar]
<html>
    <head>
        <script>
            window.addEventListener("load", function(){
                var div = document.getElementsByClassName("texto")[0];
                var spanPuntos = div.getElementsByClassName("puntos")[0];
                var valor = parseInt(spanPuntos.innerHTML);
                alert(valor);
            })
        </script>
    </head>

    <body>
        <div class="col-xs-6 texto">
            <span class="nombre">Petrosian</span>
            <span class="puntos">2730</span>
        </div>
    </body>
</html>


No es JQuery, eso sí.

xiruko

Hola,

Quieres sacar el valor al hacer click en cualquier div con clase texto?

Código (javascript) [Seleccionar]
$(document).on('click', 'div.texto', function() {
  var value = $(this).find('span.puntos').text();
  alert(value);
});


Saludos!

JonaLamper

Gracias a ambos. Me gusta más la solución en JS.

ivancea96, vi esa solución por Internet, pero no entendí por qué el
  • . ¿Acaso lo que devuelve es un array?
Utilizar palabras para hablar de palabras es como utilizar un lápiz para hacer un dibujo de ese lápiz sobre el mismo lápiz.

Pablo Videla

Código (javascript) [Seleccionar]


$(document).ready(function()
{

alert($(".puntos").text());
});

Prueba eso.

Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.


Si te retorna el valor, mete el codigo dentro de tu funcion onlick.

ivancea96

Cita de: JonaLamper en 24 Septiembre 2016, 17:30 PM
Gracias a ambos. Me gusta más la solución en JS.

ivancea96, vi esa solución por Internet, pero no entendí por qué el
  • . ¿Acaso lo que devuelve es un array?
getElementById retorna 1 elemento, porque se supone que soo habrá 1 elemento con el mismo ID. Pero getElementsByClassName retorna todos los elementos que tengan esa clase dentro del contenedor. En caso de que hubiera varios, ya sería cosa tuya seleccionar cuál. Pero según ese ejemplo, debería retornar un array con 1 valor.