Comment garder l'id de depart

Signaler
Messages postés
361
Date d'inscription
jeudi 5 février 2004
Statut
Membre
Dernière intervention
1 octobre 2010
-
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-
Bonjour,

J'aimerais tout simplement garder un id que je donne.

Par exemple une textbox avec un id=text et non avoir par la suite un id=content$prix$_...

Merci.

6 réponses

Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Bonjour,

Je suppose que tu as besoin de cet ID pour effectuer des traitements javascript par la suite.
Si c'est le cas, la solution est simple.
A l'aide d'un objet ClientScriptManager, tu vas pouvoir générer un bloc javascript dans ta page ASP.
Dans ce bloc tu n'as plus qu'à te créer une variable javascript que tu affecteras a TextBox1.UniqueID.

Shell
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Voici un exemple en C# que je n'ai pas testé.
Mets ce bout de code dans le Page_Load de ta page par exemple :

---------------------------DEBUT DE CODE----------------------------------------
ClientScriptManager csmBlock = Page.ClientScript;
StringBuilder sbScript = new StringBuilder();

sbScript.Append("<script type="text/javascript">");
sbScript.AppendFormat("var cTextbox1 = "{0}";", Textbox1.UniqueID);
sbScript.Append("</script>");

csmBlock.RegisterClientScriptBlock(this.GetType(), "VariableBlock", sbScript.ToString(), false);
------------------------------FIN DE CODE------------------------------------------

Voila c'est tout, il ne te reste plus qu'à appeller la varaible "cTextbox1" depuis ton code javascript qui en a besoin.

Shell
Messages postés
361
Date d'inscription
jeudi 5 février 2004
Statut
Membre
Dernière intervention
1 octobre 2010

Bonjour et merci de t interressé a mon sujet :).
Donc mon soucis c'est le value du hidden se change bien mais lors du changement il me change le name et l id et sa je veux pas.
Et renommer le name et l id en code sa ne fonctionne pas, il ne fait pas d erreur mais ne veut quand meme pas les renommés.

<input
type="hidden"
id="prix"
runat=server
name="amount"
value="9.00">prix.Value = "5.00";

sa fonctionne mais

prix.name = "amount" ne fonctionne pas il  me donne ceci -->
<input name="ctl00$ContentPlaceHolder1$prix" type="hidden" id="ctl00_ContentPlaceHolder1_prix" value="29.00" />

ctl00$ContentPlaceHolder1$prix et sa j'en veux pas, je veux qu il reste a "amount"
 et a "prix".

Merci
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Je ne fais pas bien le distingo du code que tu mets entre la partie javascript et la partie ASP.
Donne plus de précison quand à l'organisation de ton code au sein de ta page, et a quel niveau les modifications doivent être faites (code javascript ou code ASP).

Shell
Messages postés
361
Date d'inscription
jeudi 5 février 2004
Statut
Membre
Dernière intervention
1 octobre 2010

je vais essayer de m'expliquer mieux :) merci de ton aide.

 cette ligne c'est ce que j'ai au depart

 En code-behind je fais ma gestion qui me permet de changer la value de l'hidden "prix" suite a un postback, par exemple suite a un choix ma valeur deviens "5.00"

prix.Value = "5.00";

Donc ceci fonctionne dans "afficher la source" ma hidden prend bien "5.00" au lieu de "9.00".
Mais l'id et le name change et devienne "ctl00$ContentPlaceHolder1$prix" au lieux de "prix" et "amount"

Le soucis c'est que c'est un forualire pour paypal et que le name doit rester "amount" pour que la transcation se fasse.

Donc suite a mon postback je ne veux pas que l'id et le name de mon hidden soit renommé.

Il n'y a pas de javascript car je prefere faire mes operation coté serveur, c'est mieux je trouve pour etre plus sure de la somme envoyé. et de toute facon j'ai toujours des galeres avec javascript :).

Merci.
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Je comprends mieux,
Le problème avec ASP, c'est que lors de la génération du code il va automatiquement changer le nom de tes control ASP, et ca tu n'y peux rien.
Seuleument, je ne vois pas pourquoi il change aussi le nom de tes controls HTML.

Si tu veux envoi moi ton code dans un zip j'y jette un oeil dès que possible (je t'envoie mon @ mail par mp).

Shell