75 votes

Comment masquer une div depuis le code (c#)

J'ai un élément div sur ma page que je souhaite afficher/masquer en fonction d'une valeur de session dans mon code-behind. Comment puis-je faire cela ?

1 votes

Cacher ou le supprimer complètement ?

1 votes

Voulez-vous supprimer ou masquer ?

0 votes

Désolé pour la réponse tardive M. Muhammad et Richard. J'ai obtenu la solution de M. Buzz.

191voto

Bazzz Points 9487

Donnez à la div "runat="server" et un id et vous pourrez y faire référence dans votre code behind.

Dans le code behind :

{
    theDiv.Visible = false;
}

1 votes

Existe-t-il un moyen de le faire sans runat="server" ?

1 votes

@SalGad pas si vous voulez le masquer en utilisant C#, le runat="server" le rend accessible au CodeBehind où C# s'exécute.

1 votes

@SalGad @Bazzz a raison. Vous devez spécifier runat="server" si vous voulez le faire en C#, car sans cela, votre code-behind C# ne "connaîtra pas" votre élément

.

12voto

Davide Piras Points 28708

Si votre div a runat défini sur server, vous pouvez sûrement faire un myDiv.Visible = false dans votre événement Page_PreRender par exemple.

si vous avez besoin d'aide pour utiliser la session, consultez msdn, c'est très facile.

0 votes

Vous pouvez également trouver cette page utile. msdn.microsoft.com/en-us/library/ms178472.aspx

9voto

Aristos Points 40367

Une manière rapide et simple est de transformer le div en

et dans le code derrière vous définissez MyDiv.Visible=false

7voto

Mark Robinson Points 5893

Essayez ceci. Votre balisage :

some content

.. et dans le fichier aspx.cs :

protected void Page_Load(object sender, EventArgs e)
{
    if (Session["someSessionVal"].ToString() == "some value")
    {
        MyId.Visible = true;
    }
    else
    {
        MyId.Visible = false;
    }
}

0 votes

Argh. if(condition) { prop = true; } else { prop = false; }? Il y a une manière plus simple d'écrire cela.

1 votes

@Damien - D'accord. c.-à-d. prop = condition. Mais je voulais maximiser la lisibilité. Je suppose que la lisibilité est sujette à débat cependant! :-)

7voto

D-Bar Points 135

Dans le code HTML

Dans le code

public void Page_Load(object source, Event Args e)
{

   if(Session["Something"] == "ShowDiv")
      AssignUniqueId.Visible = true;
    else
      AssignUniqueID.Visible = false;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X