Comment obtenir la valeur de session à l'aide de javascript

J'ai une classe de traiter avec les variables de session. Voici un exemple ci-joint:

namespace General
{

    public class Session
    {
        public Session()
        {
        }


        public static string UserID
        {
            get { return HttpContext.Current.Session["UserID"] as string ?? String.Empty; }
            set { HttpContext.Current.Session["UserID"] = value;  }
        }

        public static string departFlightID
        {
            get { return HttpContext.Current.Session["departFlightID"] as string ?? String.Empty; }
            set { HttpContext.Current.Session["departFlightID"] = value; }
        }

        public static string returnFlightID
        {
            get { return HttpContext.Current.Session["returnFlightID"] as string ?? String.Empty; }
            set { HttpContext.Current.Session["returnFlightID"] = value; }
        }
}

}

Maintenant à un certain moment, j'stocker les flightID:

General.Session.departFlightID = flightID;

Et à un autre point que je veux récupérer cette valeur à l'aide de Javascript. J'ai vu des exemples ici, mais ils ne fonctionnent pas (il n'y a pas d'erreur, mais ils seront de retour EMPTY).

Plus récente de la tente:

 var session = '<%= General.Session.departFlightID %>';
 var session = '<%= HttpContext.Current.Session["departFlightID"] %>';

Il ne fonctionne pas si j'ai mis en valeur au chargement de la page, mais je suis en cours d'exécution webmethod où j'ai créer une page html et ensuite l'envoyer en html pour être rempli à l'intérieur d'un div pour faire un billet là. J'ai besoin d'obtenir la valeur de session, mais il n'est pas à jour.

Pour rendre cela plus clair, voici le code Javascript:

<script type="text/javascript">


function addTicket(flightID, flightType) {
    PageMethods.addTicket(flightID, flightType, OnGetMessageSuccess);
}

function OnGetMessageSuccess(result, userContext, methodName) {

    var pageUrl = document.URL;
    if (pageUrl.indexOf("&ret_date=&") !== -1) {

        var session = '<%= HttpContext.Current.Session["departFlightID"] %>';

        alert(session);
        result = result + "<a onclick=\"searchflight.abortAllAjax()\" data-index=\"6\" class=\"bookNow\" title=\"Book Now!\" href=\"#\">Book Now!</a>";
        result = result + "</div>    </div>  </div>";
        document.getElementById("detail").innerHTML = result;
    }

}

Et voici le webmethod:

[System.Web.Services.WebMethod]
    public static string addTicket(string flightID, string flightType)
    {
        //GET FLIGHT DETAILS  FROM DATATABLE OR SESSION DATA TABLE
        string tmpHtml = string.Empty;
        tmphtml="sample";
        string flightID="123123213";
        General.Session.departFlightID=flightID;

    return tmphtml;
    }
avez-vous essayé: var session = '<%= HttpContext.Current.Session["departFlightID"]; %>'; ?
nan mais laissez-moi vérifier ...
commentaire monté..
yup, il a fait de même les retours à vide.
vous écrivez ci-dessus le code du script dans le fichier aspx ou fichier js ? si vous écrivez dans un fichier js, il ne fonctionnera pas.

OriginalL'auteur confusedMind | 2013-07-17