Changement de focus [Résolu]

Signaler
Messages postés
35
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
15 janvier 2007
-
Messages postés
35
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
15 janvier 2007
-
Bonjour,

Je développe en ASP.NET (c#) sur VisualWebDevelopper et je voudrai savoir s'il est possible de mettre dans un label la valeur rentrée dans une textbox sans click sur bouton ou autre, juste sur changement du focus. Par exemple lorsqu'on tape toto ds une textbox, en allant sur un autre élément de lapage, ca sauvegarde directement toto dans un label.

Merci d'avance

9 réponses

Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1
yep...
mais bon.. le but est de donner un coup de main... si on a la réponse.. même si ca n'a rien à voir avec asp(net) non ?

surtout que ca a à voir avec asp.net

Voici une solution possible:

Sur la page j'ai:
1. le label : monLabel
2. la textBox: maTextbox

dans le Page_Load tu mets:

this.maTextbox.Attributes.Add("onBlur",this.monLabel.UniqueID.ToString() + ".innerHTML=" + this.maTextbox.UniqueID.ToString() + ".value;");

Pour récupéer l'id d'un contrôle côté client il faut utiliser UniqueID.
Le label est transformé (rendu) en SPAN... il faut donc utiliser innerHTML (ou innerText)

c'est bien de l'asp.NET comme ca non ?

yopyop
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
quitte à donner une solution autant donner une solution qui fonctionne !

this.maTextbox.Attributes.Add("onBlur",string.format("document.getElementById('{0}').innerHTML = this.value;", this.monLabel. UniqueID .ToString());

Mais je ne suis pas sur que c'etait vraiment la réponse qu'il souhaitait, car la on a fait que retranscrire un code javascript en asp.net. A mon avis ce que javajavajava cherchait c'etait justement cette fonction javascript, et non pas comment faire pour la mettre en place dans asp.net ... :)


<HR>
Cyril - MVS - =70-305 MCP ASP
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1
yop...

mais autant tout mettre :_

ma soluce fonctionne aussi... (compliée et tout et tout... ) et sans passer par le getElementById qui peut être assez lent en fonction du nombre d'objets html que contient ta page.

yopyop
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
Bonjour

ce que tu veux faire n'a rien à voir avec asp.net, ce n'est pas un comportement coté serveur mais coté client, il va donc falloir utiliser javascript pour faire cela ....

>> www.javascriptfr.com


<HR>
Cyril - MVS - MCP ASP
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1
tsss tsss

et pourquoi on parle d'AJAX

utilise la fonction blur() (ou onBlur() ) pour déclencher l'événement côté client

yopyop
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
Ou tu vois que je parle d'ajax ?


<HR>
Cyril - MVS - MCP ASP
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1
on en parle sur ce site... non ? je m'a trompé ?

yopyop
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
Ahhh je viens de comprendre :)

sur ce site on parle pas d'ajax pur et dur, jamais j'ai parlé de comment créer un objet XMLHttpRequest ... mais par contre comment faire pour utiliser ca a partir d'asp.net, ou alors comment renvoyer un objet .net vers javascript.

mais pour ce qui est de comment changer un texte sur la perte du focus d'un bouton ... il n'y a aucun rapport avec asp :) donc mieux vaut aller sur le forum dédié !


<HR>
Cyril - MVS - MCP ASP
Messages postés
35
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
15 janvier 2007

merci bcp :)