begin process at 2008 08 29 08:48:53
1 233 528 membres
67 nouveaux aujourd'hui
14 291 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : HTML et C# [ WebForms / Autre ] (The Red Man)

HTML et C# le 06/05/2008 10:10:11

The Red Man
Bonjour  à tous,

J'aimerai savoir comment peut récupérer un id ou name   d'un "composant" html à partir du code-behind C# ???!!!

voici mon extrait de code :


<select id="e" name="e">
  ...
</select>

<textarea id="t" name="t"></textarea>

De plus, ce code htlm est généré depuis le code-behind et envoyé a un literal.

SVP c'est important !

Merci !



Re : HTML et C# le 06/05/2008 12:41:49

jacksparoow
Bonjour

Ajout la propriété runat="server" et tu va le retrouver son id dans le code behind.
<textarea id="TextArea1" cols="20" rows="2" runat="server">
______________________________________________________________
Yassine BENNANI - Ingénieur en génie logiciel & multimédia (Consultant SI)

Re : HTML et C# le 06/05/2008 14:25:10

The Red Man
Merci !

Je vais essayer ça !

:)

Re : HTML et C# le 07/05/2008 01:17:06

The Red Man
Réponse acceptée !
j'ai trouvé la solution.

Voici l'explication :
Si avez du contenu HTML dans votre page ASPX, vous devez pour chaque control HTML spécifier à la fois l'id du control et le fameux runat="server". A partir du code-behind (pour ma part C#), vous pourrez très facilement récupérer ce control en faisant ceci :

this.IdControlHTML.{ Property, Methods,... }

Par exemple :
// contenu .aspx
<select id="Mouaa" runat="server">
   <option id="Option1" value="1">1</option>
   <option id="Option2" value="2">2</option>
</select>
 
// code-behind .cs
this.Mouaa.visible = false;

Si vous générez du HTML à partir du code-behind pour le stocker dans un div, panel ou literal. Il suffira dans ce cas utiliser Request.Form[HtmlControlName] (HtmlControlName = string name).

Or pour utiliser ceci il faut bien seulement spécifier la propriété name.

Par exemple :
// contenu .cs
// admettons que le contenu html généré et comme ceci
<select id="Mouaa" name="Mouaa">
   <option id="Option1" value="1">1</option>
   <option id="Option2" value="2">2</option>
</select>

Pour récupérer la valeur de la sélection, il suffira de faire : Request.Form["Mouaa"]

Voilà !

J'espere que ça servira à quelqu'un !

Re : HTML et C# le 08/05/2008 00:05:09

jesusonline
Membre Club
(Admin CS)
Bonjour,

Cette approche n'est pas du tout conventionnel pour ASP.net ... Je ne comprend pas ce que tu cherches à faire exactement, mais je te conseille de penser "controle" et non génération de HTML comme en php ...

En fait chaque page est compilé dans une page qui hérite de ton code-behind. Cette classe est invisible pour toi, c'est ASP.net qui la génére pour toi. Lors du parsing de la page aspx (pour pouvoir la compiler) le parseur vachercher toutes les balises ayant l'attribut runat="server" si cette attribut est présent alors il va déclarer une variable avec la propriété id (ou alors un id autogénéré) du type de ta balise. C'est pour ca que rajouter runat="server" permet d'avoir accès au contrôles dans le code-behind. Mais attention si tu utilises une masterpage ou un UserControl l'id du contrôle ne sera pas forcément l'id généré, il faut alors regarder la propriété ClientID


Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant

Re : HTML et C# le 08/05/2008 12:49:13

The Red Man

Bonjour,

Malheureusement développer des site web est un peu difficile pour moi. Merci pour l'information.

Cordialement !



Classé sous : code, html, behind

Participer à cet échange

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS