2010-02-24 4 views
1

J'ai un problème et je veux le résoudre avec jQuery.jquery, session, cache

J'ai quelques liens sur la page, et je veux obtenir le "texte" du lien sur lequel j'ai cliqué. Mais j'ai besoin de ce texte pour l'utiliser sur une autre page. Parce que quand je clique sur cette ancre, je quitte cette page, et je vais à une autre, et je dois utiliser ce "Obtenir le texte du lien" sur la deuxième page.

je l'espère, il est possible d'utiliser les cookies du navigateur avec jquery aide ..

Pouvez-vous me aider, s'il est possible !!

Merci!

Répondre

5
$("a").click(function(event){ 
    myTarget = $(this).attr('href')+"?txt="+$(this).text(); 
    window.location.href = myTarget; 
}); 

Cela transmettra le texte du lien à la page suivante en tant que paramètre de chaîne de requête appelé "txt".

Cela aide-t-il?

+0

+1 pour ne pas abuser de cookies. Vous pouvez également utiliser des identifiants de fragment (http://www.w3.org/TR/html401/intro/intro.html#fragment-uri) pour transmettre le texte. –

+0

Je suis d'accord avec cela, mais avoir un paramètre GET ajouté à l'URL tel que 'www.example.com? Thelinktext = Thisisthetextofthelink' sur la page demandée semblerait un peu lourd (IMO). – karim79

+0

Si vous étiez * vraiment * sérieux à propos de l'évitement de l'utilisation de cookies ici, vous pouvez également poster la valeur en utilisant un formulaire - mais même en suggérant que cela a fait mon âme un peu plus noire. – inkedmn

0

Read here how to set and read cookies - alors vous pouvez faire le lien établi le cookie en utilisant onclick="" et à la fin de la onclick return true; pour en faire un lien vers où il était censé juste après qu'elle se termine. Fondamentalement,

 
<a href="http://google.com" onclick="setCookie('link_title','Go to Google');return true;"> 
Go to Google 
</a> 
1

Que diriez-vous d'ajouter le texte pour demander des paramètres et l'utiliser du côté serveur?

0

Utilisation du plug-in Cookie:

$(document).ready(function() { 
    $('a.something').click(function() { 
     $.cookie('my_cookie', $(this).text()); 
    }); 
}); 


// on your second page 
$(document).ready(function() { 
    $('a.something').text($.cookie('my_cookie')); 
});