Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2006 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  changer le contenu d'un control

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

changer le contenu d'un control

n°2287632
rahmoune
Posté le 09-09-2016 à 14:37:44  profilanswer
 

Bonjour,
Je suis entrain de développer un siteweb en asp.net c#, je veux donner aux administrateurs le privilège de changer le contenu d'un label à travers un textbox sur le site. Je n'ai pas utilisé de master page, est ce qu'il y a un moyen de chagement.
Merci et bonne journée

mood
Publicité
Posté le 09-09-2016 à 14:37:44  profilanswer
 

n°2287826
rahmoune
Posté le 13-09-2016 à 15:58:33  profilanswer
 

Bonjour,
je veux savoir comment permettre aux utilisateurs de modifier le texte d'une etiquette de façon permanente sur asp.net c#
Merci d'avance.

n°2287852
TotalRecal​l
Posté le 13-09-2016 à 19:05:34  profilanswer
 

Déjà au lieu de recréer un topic pour poser exactement la même question demande toi pourquoi personne ne t'a répondu :sarcastic:
 
La question est très vague et incompréhensible :
- Quelle techno : ASP.Net Webform ou MVC ? Vu que tu parles de Label on va supposer Webform.
- La modif doit elle faite en temps réel (genre : l'utilisateur tape dans la textbox, le label s'update en même temps) ou bien après le clic sur un bouton (et donc avec un postback serveur) ?
- Ca veut dire quoi "permanente" ? Stocké dans une BDD et restauré quand l'utilisateur va rouvrir la page une semaine plus tard ? Ou bien dans un cookie ? Autre chose ?
- Qu'est ce que tu as déjà fait ?  
 
Faire de l'ajax ou du "temps réel" en webform c'est assez peu pratique parce que les contrôles générés en webforms ne se prêtent pas toujours aux manips faites côté client. Pour ça MVC est meilleur. Mais ton besoin est ultra simple, en 4 lignes de jquery on copie le textbox dans le label. Reste à éclaircir ton histoire de truc permanent.


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2287920
rahmoune
Posté le 14-09-2016 à 14:21:11  profilanswer
 

J'utilise asp.net, j'ai pu le faire mais pas de façon permanante, et en utilisant l'ajax j'utilisais ça:
<script>
        $(document).ready(function () {
            console.log("ready!" );
            $("#session2Label" ).empty();
            $("#session2Label" ).text("TextBox1" ).value;
        });
 
    </script>  
sur le c# j'utilisais ça  
 protected void Button1_Click(object sender, EventArgs e)
        {
if(IsPostBack)
            {
                session2Label.InnerText = string.Empty;
                session2Label.InnerText = TextBox1.Text;
            }
}
Alors, s'il y a une autre méthode qui réglera ça je serai très apréciés.
Mersi et bonne journée.
 
Alors, si

n°2287921
TotalRecal​l
Posté le 14-09-2016 à 14:30:26  profilanswer
 

pas la moindre idée d'où tu sors ta propriété InnerText, ça n'existe pas en webforms. C'est Text qu'il faut utiliser.

 
Code :
  1. protected void Button1_Click(object sender, EventArgs e)
  2.         {
  3. if(IsPostBack)
  4.             {
  5.                 session2Label.InnerText = string.Empty;
  6.                 session2Label.InnerText = TextBox1.Text;
  7.             }
  8. }


Peut devenir tout simplement :

Code :
  1. protected void Button1_Click(object sender, EventArgs e)
  2.         {
  3.                 session2Label.Text = TextBox1.Text;
  4. }


vu que
- pour entrer dans l'événement clic du bouton c'est forcément un postback.
- tu peux écrire le text sans vider le label d'abord.

 

La partie jquery doit fonctionner encore moins bien pour plein de raisons mais je ne peux pas te donner une version fonctionnelle sans la partie "contrôles" de ton code que tu as omis de poster.

 

Pour manipuler des contrôles serveur côté client en webforms il y a des contraintes, comme je disais au dessus. Le plus simple pour un néophyte est probablement d'utiliser la CssClass. Regarde aussi la propriété ClientID et les facilités syntaxiques de jquery comme les sélecteurs de la forme $("[id$=txttruc]" ).


Message édité par TotalRecall le 14-09-2016 à 14:32:46

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2287937
rahmoune
Posté le 14-09-2016 à 15:35:41  profilanswer
 

Premièrement, session2label.text ne marche pas pour moi, les choix d'intellisince que j'ai c'est(innerhtml, innertext) il n' y a pas de .text.
concernant le jquery:Voila quand j'entre un texte, ça marche de façon permanente, mais quand je place un textbox, ça ne marche pas:
<script>
        $(document).ready(function () {
            console.log("ready!" );
            $("#session2Label" ).empty();
            $("#session2Label" ).text("bonjour" );
        });
 
    </script>
celui il marche
 
<script>
        $(document).ready(function () {
            console.log("ready!" );
            $("#session2Label" ).empty();
            $("#session2Label" ).text("TextBox" ).value;
        });
 
    </script>
aussitôt je change page et je revient je trouve seulement l'ancien text.

n°2287948
TotalRecal​l
Posté le 14-09-2016 à 16:48:08  profilanswer
 

Alors je ne sais pas quel framework tu utilises mais ça n'est pas du webform et ton label n'est pas un System.Web.UI.WebControls.Label et en disant "asp.net" tu n'as toujours absolument pas répondu à ma question relative à la techno que tu utilises...
A la limite je peux toutefois continuer d'extrapoler en disant qu'en fait tu fais bien du webform mais que tu nous parles non pas de Label mais de balises html quelconques sur lesquelles tu mets des runat="server", d'où l'existence de ces propriétés :sarcastic:.

 

Je pense qu'il serait temps que tu postes un code complet au lieu de petits bouts et que tu lises un vrai tuto...


Message édité par TotalRecall le 14-09-2016 à 16:50:52

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2287961
rahmoune
Posté le 14-09-2016 à 18:29:38  profilanswer
 

Voila le code, j'utilise visual studio 2015.
page.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChangerLabel.aspx.cs" Inherits="Projet.ChangerLabel" %>
 
<!DOCTYPE html>
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <fieldset>
                <div>
                    <h1 style="font-weight: bold; font-size: x-large">Formulaire </h1>
                     
                    <ul>
                        <li>
                            <label id="session1Label" runat="server" style="font-weight: normal">Session 1 (1 au 11 juillet 2016) - « Niveau »</label></li>
                        <li>
                            <label id="session2Label" style="font-weight: normal" runat="server">Session 2 (11 au 21 juillet 2016) - « Niveau »</label></li>
                        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                     
                        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
                    </ul>
                    <br />
                    <p>
                        LE COÛT TOTAL DOIT ÊTRE ACQUITTÉ AVANT LE 3 JUIN 2016.  
                    </p>
                </div>
            </fieldset>
        </div>
    </form>
    <%--ça marche sans utilisation de bouton et de façon permanente, mais moi je veux donner un provilége a l'admin de changer le label a chaque fois il a besoin(dépend de la promotion)--%>
    <script>
        $(document).ready(function () {
            console.log("ready!" );
            $("#session2Label" ).empty();
            $("#session2Label" ).text("nouveau texte" );
        });
 
    </script>
</body>
</html>
 
Page.aspx.cs
 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace SiciafUmcs
{
    public partial class ChangerLabel : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
 
        }
 
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                //session2Label.InnerText = string.Empty;
                session2Label.InnerText = TextBox1.Text;
            }
        }
    }
}

n°2288018
rahmoune
Posté le 13-09-2016 à 16:09:29  profilanswer
 

Bonjour,  
J'ai posté ma question ça fait 4 jours et je n'ai pas reçu de réponce, alors j'ai essayé de répondre a mon message, cela non plus ça marchait pas, je ne sais pas pourquoi, j'ai donc décidé d'écrire une autre question, ésperant que cette fois ça marchera.
Donc ma question est comment permettre aux utilisateurs de modifier le texte d'une etiquette d'une façon permaente sur asp.net c#, j'ai trouvé des exemples de jquery ajax et js mais avec une string, s'il y a un moyen de relier le label avec un textbox, en changeant le textbox, le label prend le même contenu.
 
Merci et une bonne journée.

n°2288019
gilou
Modérateur
Modzilla
Posté le 15-09-2016 à 11:12:18  profilanswer
 

Les sujets suivant ont été fusionnés à ce sujet par Gilou

  • modifier le texte d'une étiquette


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  changer le contenu d'un control

 

Sujets relatifs
lecture de fichier pour comparaison de contenuFonction "effacer contenu sur changement" sur 2 cellules
Récupérer le contenu d'un champs de type date en phpChanger le fond d'écran à intervalle régulier
Changer les données affichées sur une page Web! UP ! VBScript Changer une imprimante par défaut grâce à son IP
Changer la valeur d'un champs par choix multipleChanger le champs d'un enregistrement d'une table
[resulu]Changer de répertoire courant sans shell sur Gnu/Linux.Changer couleur bouton selon variable
Plus de sujets relatifs à : changer le contenu d'un control


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR