elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey  (Leído 8,671 veces)
Lupin

Desconectado Desconectado

Mensajes: 153



Ver Perfil
¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« en: 26 Mayo 2011, 03:01 am »

Hola
Tengo varios divs que genero por php y cada uno me arroja un id especifico
¿como puedo recuperar el valor de esa id por javascript?
Quiero recuperar para poder enviarlo por url a otra pagina
 :-[ :-[
Código:
<script src="includes/jquery.js" type="text/javascript"></script>
       
<script type="text/javascript">
            $(document).ready(function (){
                //Aqui asignamos el click al elemento <a>
                $(".delete").click(function (){
 
  var click_element= this;
alert(click_element.nodeName); // QUIERO OBTENER
AQUI EL "id_pagina" DEL DIV  PERO SOLO ME ARROJA EL TIPO DE ELEMENTO!!!!
                });
            });
</script>


    <DIV class="art">
    <A href="<?php print 'empleados.php?hist='.$row["id_pagina"].'#ancla'; ?>"></A>
    <div class="delete" align="center"><b>DELETE</b></div>
   </DIV>
   
   
       <DIV class="art">
    <A href="<?php print 'empleados.php?hist='.$row["id_pagina"].'#ancla'; ?>"></A>
    <div class="delete" align="center"><b>DELETE</b></div>
   </DIV>
   
   
       <DIV class="art">
    <A href="<?php print 'empleados.php?hist='.$row["id_pagina"].'#ancla'; ?>"></A>
    <div class="delete" align="center"><b>DELETE</b></div>
   </DIV>
   .
   .
   .
Con este codigo solo logro recuperar el typo de elemento pero a mi me interesa el  $row["id_pagina"] que contiene un determinado Div al hacer click


En línea

bomba1990


Desconectado Desconectado

Mensajes: 395



Ver Perfil WWW
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #1 en: 26 Mayo 2011, 03:54 am »

si quieres obtener el valor de el atributo href solo tienes que hacer $(this).attr('href'), si quieres extraer el id tienes que hacer un de la url, puede usar esto var id= ruta.substring(ruta.lastIndexOf("="),ruta.length); es decir te quedaria asi:

Código
  1. $(".delete").click(function (){
  2. var id_pagina = $(this).attr('href);
  3. var id = id.substring(id.lastIndexOf("="),id.length);
  4. });
  5.  

No lo e probado pero te debe funcionar


En línea

"Cuando le di de comer a los pobres me llamaron santo, pero cuando pregunte porque los pobres eran pobres me dijeron comunista"

http://sosinformatico.blogspot.com/
http://www.publisnet.com.ve
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #2 en: 26 Mayo 2011, 04:05 am »

Yo tengo esta pequeña función para obtener un parámetro GET.
Código
  1. function buscarParametroGET( parametros ){
  2.  var expReg    = "[\\?&]"+parametros+"=([^&#38;#]*)";
  3.  var regEx     = new RegExp ( expReg );
  4.  var uRL       = window.location.href;
  5.  var resultado = regEx.exec( uRL );
  6.  if( resultado == null ){
  7.    return "";
  8.  }else{
  9.    return resultado[1];
  10.  }
  11. }
En línea

Te vendería mi talento por poder dormir tranquilo.
RedZer


Desconectado Desconectado

Mensajes: 666



Ver Perfil
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #3 en: 26 Mayo 2011, 04:26 am »

checate esta liga aver si te sirve de algo
http://foro.elhacker.net/desarrollo_web/pasar_parametros_con_jquery_y_ajax-t327513.0.html
En línea

Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
Lupin

Desconectado Desconectado

Mensajes: 153



Ver Perfil
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #4 en: 27 Mayo 2011, 00:34 am »

Gracias por responder muchachos ,ahora he entendido como hacerlo pero no me funka el codigo lo he arreglado asi  (utilizando los codigos de bomba1990  y modificando la funcion de Shell Root ) :

Quiero recuperar "href" del los div "art" y luego mediante la funcion buscarparametrosGET recuperar un determinado "id_pagina" segun el div donde el usuario haga click y alli mandarlo por URL a la misma pagina pero enviando el metodo GET el "id_pagina" que recupere...
La verdad recien esoy empezando en PHP y no he prestado mucha importancia a javascript pero veo que hay casos en el cual hay que manejar los dos..
Aqui esta mi codigo que no funciona ante los clicks que le mando   :( :(


mipagina.php
Código:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
            $(document).ready(function (){
                //Aqui asignamos el click al elemento <a>
              $(".delete").click(function (){

var id_pagina = $(".art").attr['href'];
location.href="mipagina.php?id="
  + buscarParametroGET( 'id_pagina' , id_pagina) ;
})
 
   });

function buscarParametroGET( parametros , url)
{
var expReg    = "[\\?&]"+parametros+"=([^&#38;#]*)";
var regEx     = new RegExp ( expReg );
var resultado = regEx.exec( url );
if( resultado == null ){
   return "";
}else{
   return resultado[1];
}
}



</script>


<style type="text/css">
<!--
.delete {
height: 300px;
width: 300px;
background-color: #0C0;
}
.art {
background-color: #0f0;
}

-->
</style>
</head>

<body>



<DIV class="art"><A
href="xxx.php?cap=1&id_pagina=78#ancla">
<img alt="" src="images/001.jpg"
border=0><br>
                  </A>
    <div class="delete" align="center"><b>DELETE</b></div>
</DIV>
 
   <br>
   
   
  <DIV class="art"><A
href="xxx.php?cap=1&id_pagina=79#ancla">
<img alt="" src="images/001.jpg"
border=0><br>
                  </A>
    <div class="delete" align="center"><b>DELETE</b></div>
</DIV>

   
 
</body>
</html>
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #5 en: 27 Mayo 2011, 04:48 am »

Pero no entiendo muy bien, a ver. Supongamos que tenemos la siguiente estructura.

Código
  1. <div id = "contenedor">
  2.  <a href = "index.php?token=23fb81d50f1eaf9de847a56a00">
  3.    <img src = "IMG/imgPoC.jpg" >
  4.  </a>
  5.  <div id = "delete">DELETE</div>
  6. </div>

Entonces, lo que quieres es tener el LINK del a href si hace click en la capa DELETE? Quizás te sirva esto,
Código
  1.  <head>
  2.    <title>PoC</title>
  3.    <script type = "text/javascript" src = "JQuery.js"></script>
  4.  </head>
  5.  <body>
  6.  
  7.  <div class = "art">
  8.      <a id = "link" href = "hola">
  9.        <img alt = "" src = "http://profile.ak.fbcdn.net/hprofile-ak-snc4/186520_100001061925688_4930346_q.jpg" border = 0>
  10.      </a>
  11.    <div class = "delete" align = "center"><b>DELETE</b></div>
  12.  </div>
  13.  
  14.  <script language="javascript">
  15.    $("div.art > div.delete").click( function() {
  16.      var sHREF = $("#link").attr("href");
  17.      alert(sHREF);
  18.    });
  19.  </script>
  20.  
  21.  </body>
  22. </html>
« Última modificación: 27 Mayo 2011, 05:12 am por Shell Root » En línea

Te vendería mi talento por poder dormir tranquilo.
Lupin

Desconectado Desconectado

Mensajes: 153



Ver Perfil
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #6 en: 27 Mayo 2011, 20:12 pm »

Código:
<html>
<head>
<title>PoC</title>

    <script type="text/javascript" src="Saya Willka/includes/jquery.js"></script>

</head>
<body>
 
  <div class = "art">
      <a id = "link" href = "borrar.php?id_pagina=34">
        <img alt = "" src ="oficina.gif" border = 0>
      </a>
    <div class = "delete" align = "center"><b>DELETE</b></div>
  </div>
 
  <script language="javascript">
    $("div.art > div.delete").click( function() {
      var sHREF = $("#link").attr("href");
      alert( "HOLA "+ sHREF);
  alert(buscarParametroGET("id_pagina" , "borrar.php?id_pagina=54"));// SI FUNCIONA !!!!
  alert(buscarParametroGET("id_pagina" , sHREF)); // NO FUNCIONA !!!
 
location.href="destino.php?capt=" + buscarParametroGET("id_pagina" , sHREF);
   
function buscarParametroGET( parametros , url)
{
var expReg    = "[\\?&]"+parametros+"=([^&#38;#]*)";
var regEx     = new RegExp ( expReg );
var resultado = regEx.exec( url );
if( resultado == null ){
   return "";
}else{
   return resultado[1];
}
}
    });

</script>
 
</body>
</html>


En línea

Lupin

Desconectado Desconectado

Mensajes: 153



Ver Perfil
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #7 en: 27 Mayo 2011, 20:26 pm »

Gracias Shell Root
Tus codigos han sido geniales  me han sido de mucha ayuda,  veo que intentar programar una web y pretender querer hacerlo SOLO en php puede llegar a ser muy limitante !!!, bueno por lo menos para mi si.
Pero tengo una duda que no me explico :
1 .Porque el script de codigo de JQuery se coloca casi finalizando el Body, la verdad yo lo cambie de ubicacion encima de los divs y no me funciono.
2. Mi otra pregunta seria porque no funciona esto
Código:
alert(buscarParametroGET("id_pagina" , "borrar.php?id_pagina=54"));// SI FUNCIONA !!!!
  alert(buscarParametroGET("id_pagina" , sHREF)); // NO FUNCIONA !!!
  location.href="destino.php?capt=" + buscarParametroGET("id_pagina" , sHREF);
En realidad lo que necesito es la ultima linea osea una redireccion a otra pagina pero con datos obtenidos del div.
Tu funcion buscarParametroGET me ha dado la idea que necestiaba es recontra util, es mas le he modificado para dos paremetros y si me ha funcionado dentro del jquery pero cuando le paso variables no...
Aqui esta mi codigo completo...jeje lamento la insistencia pero es una joda atascarse en una parte del codigo y no seguir avanzando en el proyecto..
Código:
<html>
<head>
    <title>PoC</title>

    <script type="text/javascript" src="jquery.js"></script>

  </head>
  <body>
 
  <div class = "art">
      <a id = "link" href = "borrar.php?id_pagina=34">
        <img alt = "" src ="oficina.gif" border = 0>
      </a>
    <div class = "delete" align = "center"><b>DELETE</b></div>
  </div>
 
  <script language="javascript">
    $("div.art > div.delete").click( function() {
      var sHREF = $("#link").attr("href");
  alert(buscarParametroGET("id_pagina" , "borrar.php?id_pagina=54"));// SI FUNCIONA !!!!
  alert(buscarParametroGET("id_pagina" , sHREF)); // NO FUNCIONA !!!
  location.href="destino.php?capt=" + buscarParametroGET("id_pagina" , sHREF);
   


function buscarParametroGET( parametros , url)
{
var expReg    = "[\\?&]"+parametros+"=([^&#38;#]*)";
var regEx     = new RegExp ( expReg );
var resultado = regEx.exec( url );
if( resultado == null ){
   return "";
}else{
   return resultado[1];
}
}
    });

  </script>
 
  </body>
</html>

En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #8 en: 27 Mayo 2011, 23:14 pm »

Debería de funcionar sólo si tienes correcta la variable sHREF, es decir,
Código
  1.  var sHREF = "http://foro.elhacker.net/post.html;topic=328726.0;num_replies=7";
  2.  alert( buscarParametroGET("num_replies", sHREF) );

Así que tienes que hacer que sHREF contenga la URL que quieres.
En línea

Te vendería mi talento por poder dormir tranquilo.
Lupin

Desconectado Desconectado

Mensajes: 153



Ver Perfil
Re: ¿Como recuperar un dato de varios divs haciendo Click ? - javascript - Jquey
« Respuesta #9 en: 27 Mayo 2011, 23:23 pm »

Pero si tengo  sHREF correcto incluso cuando
hice un alert(sHREF) me arroja la url sin problemas

Código:
...
$("div.art > div.delete").click( function() {
      var sHREF = $("#link").attr("href");  // si funciona pero parece que la funcion
buscarParametroGET no lo recibe bien.


....

Creo que optare por esta solucion menos eficiente pero  es lo que tengo a la mano por ahora :
Código:
...var sHREF = $("#link").attr("href");
var strCompleta=new String(sHREF);
var adelante = strCompleta.substring(strCompleta.indexOf("id_pagina")+10, strCompleta.length);
alert (adelante);
...
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines