Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: itzg3 en 7 Abril 2014, 00:57 am



Título: Obtener valor de un elemento html
Publicado por: itzg3 en 7 Abril 2014, 00:57 am
Tengo una lista desordenada en la cual tengo 3 link:
Código:
<ul class="gnr">

<li><a class="lnk" href="#" title="Link1">Link1</a></li>
<li><a class="lnk" href="#" title="Link2">Link2</a></li>
<li><a class="lnk" href="#" title="Link3">Link3</a></li>
</ul>

Todos los links son de la clase "lnk" y lo que quiero hacer es que al hacer click en cualquiera de ellos se guarde el valor del atributo "title" en una variable y enviarla usando la funcion ajax()  de jquery a un documento php.


Título: Re: Obtener valor de un elemento html
Publicado por: engel lex en 7 Abril 2014, 04:15 am
leete este tutorial (http://www.javascriptya.com.ar/jquery/) explican eso y más


Título: Re: Obtener valor de un elemento html
Publicado por: itzg3 en 7 Abril 2014, 05:09 am
hola,
exacto sigo aquel tutorial pero me quede truncado en la parte de la conexion entre ajax y php.

Muestro el codigo que tengo:

En en el html:
Código:
<html>
<head>

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

</head>
<body>

<div id="bloque_geners">
<ul class="gnr">

<li><a class="lnk" href="#" title="Link1">Link1</a></li>
<li><a class="lnk" href="#" title="Link2">Link2</a></li>
<li><a class="lnk" href="#" title="Link3">Link3</a></li>

</ul>
</div>
<div id="resultados">

</div>
</body>
</html>

En el JS:

Código:
var x;
x=$(document);
x.ready(inicializarEventos);

function inicializarEventos()
{
  var x;
  x=$(".lnk");
  x.click(presionSubmit);
}

function presionSubmit(){

$("a.lnk").each(function(){ //Esta linea y
   
               var t = this.title; // esta otra me dejaron en duda.

$.ajax({

           async:true,
           type: "POST",
           dataType: "html",
           contentType: "application/x-www-form-urlencoded",
           url:"recibe.php",
           data:"titulo="+t,
           beforeSend:inicioEnvio,
           success:llegadaDatos,
           timeout:4000,
           error:problemas
         });

});
}

function inicioEnvio()
{
  var x=$("#resultados");
  x.html('<img src="loading.gif">');
}

function llegadaDatos(datos)
{
  $("#resultados").text(datos);
}

function problemas()
{
  $("#resultados").text('Problemas en el servidor.');
}

Y el PHP:

Código:
<?php

$g=$_REQUEST['titulo'];

if($g=="Link1"){

echo "click en Link1";
}else{
if($g=="Baladas"){
echo "click en Link2";

}else{

echo " click en Link3";
}
}

?>

Y al hacer click en cualquiera de los tres link me imprime que hice click en Link3  y no me muestra el nombre del link respectivo al que se hizo click.


Título: Re: Obtener valor de un elemento html
Publicado por: EFEX en 7 Abril 2014, 18:30 pm
Por que tantas vueltas?

Código
  1. $(document).ready(function() {
  2. $('.gnr a').on('click', function(){
  3. var title = $(this).attr('title');
  4. alert(title);
  5. // ...  ajax
  6. });
  7. });
  8.  


Título: Re: Obtener valor de un elemento html
Publicado por: itzg3 en 7 Abril 2014, 22:18 pm
Gracias por esa respuesta tan breve .Le estaba dando mucha vuelta al tema xD

Saludos.