2010-09-03 6 views
1

J'essaie d'envoyer les détails de mes utilisateurs connectés avec cette demande, car j'utilise une instruction if else endif sur la page demandée pour afficher certains boutons, par exemple "ajouter un nouvel élément "Django jQuery obtenir envoyer les données des utilisateurs connectés

Mon code jQuery se présente comme suit:

$('.wall').click(function(){ 
    $('#loading').show(); 
    $.get(this.href, { request.user: request.user }, function(data){ 
     $("#wall-tabs").html(data); 
     $('#loading').hide(); 
    }); 
    $(".wall").find("span").removeClass("selected"); 
    $(this).find("span").addClass("selected"); 
    return false; 
}); 

Ce $.get(this.href, { request.user: request.user }, function(data){ semble casser, si je supprime les données entre les supports ça marche, mais je ne suis pas voir les boutons ...

Répondre

1

Il me semble que vous devez spécifier un nom de paramètre dans votre carte de données. Ainsi, au lieu de:

$.get(this.href, { request.user: request.user }, function(data){ 

Vous avez:

$.get(this.href, { parameter_name : request.user }, function(data){ 

Où parameter_name est le nom de la variable de se la page que vous demandez prévoyez recevoir.

Jetez un oeil à la documentation jQuery, à mi-chemin en bas de la page:

http://api.jquery.com/jQuery.get/

1

Il y a un problème avec t La syntaxe utilisée pour sélectionner les variables. Vous aurez besoin de deux crochets pour ramasser la variable dans le modèle. Quelque chose comme ça: {{ request.user }}.

Cependant, je ne suis pas sûr que vous puissiez l'inclure directement car il y a un conflit évident avec la syntaxe JS. Vous pouvez collecter {{ request.user }} dans une variable, puis l'utiliser dans le dictionnaire.

+1

Pourquoi le conflit de syntaxe? Les variables de modèle sont résolues avant l'envoi de la page au client, de sorte que le javascript ne voit que la variable rendue. –

+0

Merci. Mon erreur. Je ne pensais pas directement. –

Questions connexes