2011-06-10 20 views
1

Je suis nouveau dans ASP.net. Je souhaite stocker du texte dans la zone de texte depuis JavaScript vers les variables de session et transmettre ces variables de session au JavaScript côté client. Est-ce possible?Accès aux informations de session en JavaScript

+0

Voulez-vous transmettre la valeur de la zone de texte d'une page à la page javascript d'une autre personne? –

Répondre

1

Vous devrez le faire dans le code derrière.

Pour stocker la valeur de la zone de texte de la session, dans le gestionnaire d'événement correct vous devez mettre le code comme:

if (!IsPostback) { 
    Session("TextboxContent") = txtTextbox.Text; 
} 

Et pour le remplir en javascript côté client, cela dépend si vous êtes en utilisant une bibliothèque ou non, mais quelque chose qui devrait fonctionner indépendamment est d'avoir les éléments suivants dans votre balisage:

<script type="text/javascript"> 
    var tb = document.getElementById('<%= txtTextbox.ClientID'); 
    if (tb) tb.value = '<%= Session("TextboxContent").ToString().Replace("'", @"\'") %>'; 
</script> 

Notez que d'avoir le code comme je l'ai fait ici <%= %> (« balises alligator ») est généralement considéré comme assez mauvais pratique, mais vous pouvez utiliser un <asp:Literal> ou autre chose si vous le souhaitez. Pourriez-vous expliquer le scénario que vous voulez réaliser?

+0

En outre, si vous utilisez le contrôle ScriptManager, vous pouvez également faire quelque chose comme ce qui suit dans le code: 'ScriptManager.RegisterStartupScript (Me, Me.GetType()," PopulateTextbox "," var tb = document.getElementById (' "+ txtTextbox.ClientID +" '); if (tb) tb.value =' "+ Session (" TextboxContent "). ToString(). Remplacer (" '", @" \' ") +" '; ", vrai); ' – GregL

Questions connexes