IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SharePoint .NET Discussion :

Comment récupérer la value d'un HtmlInputHidden par le code?


Sujet :

SharePoint .NET

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Comment récupérer la value d'un HtmlInputHidden par le code?
    Bonjour à tous,

    Dans le cadre d'un projet, je voudrais récupérer la valeur d'un champ caché (type hidden) présent dans une webpart.
    Ce champ est défini et ajouté au HTMLWriter dans la méthode render, sa valeur est modifiée par du javascript (je suis obligé d'utilisé du code client-side pour des raisons de performances) selon que des checkbox sont cochées ou non. Le seul postback doit se faire au clic sur un bouton "search". Pour éviter d'avoir à recharger la page, je fais le traitement dans la méthode OnUnload de la webpart.
    Jusqu'ici, tout se passe bien, le this.FindControl récupère bien mon champ hidden, par contre celui ci a systématiquement pour valeur "" !!! Or, en mettant des alertes dans mon code javascript, j'ai bien vérifié que la valeur était mise à jour sans problème, le souci vient donc de la récupération de cette valeur via le code C#...

    Le code en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    protected override void OnUnload(EventArgs e)
    {
            ...
            SearchChoices choices = new SearchChoices();
            string platforms = ((HtmlInputHidden)(this.FindControl("hfcbPlatform"))).Value; // Le contrôle est bien retrouvé, mais value = "" !
            base.OnUnload(e);
            ...
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    protected override void Render(HtmlTextWriter writer)
    {
            ...
            HtmlInputHidden hiddenField = new HtmlInputHidden();
            hiddenField.ID = "hfcbPlatform";
            hiddenField.RenderControl(writer);
            this.Controls.Add(hiddenField); // utile???
            ...
    }
    A noter que le viewstate est à true lors du debug.

    Quelqu'un aurait-il une idée à me soumettre? Merci d'avance!!!!!

  2. #2
    Membre du Club
    Homme Profil pro
    Concepteur/Développement
    Inscrit en
    Juin 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Concepteur/Développement
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2004
    Messages : 60
    Points : 52
    Points
    52
    Par défaut
    Bonjour,

    as-tu vérifié dans ton unload si la valeur des cases à cocher sont bien modifiée ?
    Si je ne m'abuse, s'il n'y a pas de postback il ne devrait pas y avoir de mise à jour des données remontée au c# !

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/03/2011, 15h29
  2. Réponses: 2
    Dernier message: 26/12/2006, 09h39
  3. Réponses: 2
    Dernier message: 08/10/2006, 11h44
  4. Réponses: 12
    Dernier message: 08/09/2006, 10h05
  5. [c#] comment récupérer le namespace d'une DLL par réflection?
    Par Jayceblaster dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/07/2006, 13h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo