IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

asp.net/c# prb de javascript avec masterpage


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 55
    Par défaut asp.net/c# prb de javascript avec masterpage
    Salut.
    Je travaille sur site web asp.net/c#.
    Mon problème c’est que : je veux quand je clique sur un Botton dans un Popup d’affecter une valeur à une TextBox qui existe dans une page qui hérite d’une Masterpage .
    RQ : ce code
    <<string script = "<script language=\"JavaScript\" type=\"text/javascript\">window.opener.form1.TextBox1.value='" + Calendar1.SelectedDate.Date.ToShortDateString() + " '; window.close();</script>";
    Response.Write(script);>>
    Marche bien si je n’utilise pas les Masterpage.
    Voila c’est mon probleme.
    Et merci merci d’avance.

  2. #2
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    regarde le nom que Calendar1 prends dans ton code HTML. Tu verras que ce n'est pas le bon nom et c'est pour cela que ton javascript ne fonctionne pas

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 55
    Par défaut
    Citation Envoyé par Arthis Voir le message
    regarde le nom que Calendar1 prends dans ton code HTML. Tu verras que ce n'est pas le bon nom et c'est pour cela que ton javascript ne fonctionne pas
    Merci pour la réponse, mais le nom de calendar1 c'est le bon nom.
    le probleme c'est que ce code marche bien si je n'utilise pas la masterpage.
    quand j'ai hérité la page d'une masterpage c'est là le probleme se pose.
    Merci encore fois.

  4. #4
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Tu peux me montrer le code HTML de ta page et les codes de tes pages aspx et cs pour que je regarde ca de plus pres?

  5. #5
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    pardon c'est le textbox qui devrait changer de nom, c'est bien celui la qui est dans le asp:content non?

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 55
    Par défaut
    Citation Envoyé par Arthis Voir le message
    pardon c'est le textbox qui devrait changer de nom, c'est bien celui la qui est dans le asp:content non?
    Oui c'est la meme parceque j'ai gardé les mêmes noms.
    Je croix que le probleme est dans le chemin d'accés "window.opener.form1.TextBox1.value", il faut ajouter qlq chose puisque j'ai utilisé les masterpages non?
    Et Merci

  7. #7
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Normalement non, c'est du javascript dans c'est du coté client que ca se passe, que ce soit une masterpage ou non, du coté client le navigateur en a rien à faire.

    [EDIT]
    Envoie le code HTML que tu as dans ta popup et ta page parente.
    [EDIT]

  8. #8
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Par défaut
    Si tu as une masterpage, si ton textbox est à l'intérieur du contentplaceholder, son id coté client doit ressembler a ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ctl00_ContentPlaceHolder1_TextBox1

  9. #9
    Expert confirmé
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Par défaut
    Citation Envoyé par Bientôt dans la FAQ
    Comment passer le contenu d’une variable ASP.NET à du javascript ?
    Ce type de besoin arrive fréquemment. La solution la plus simple est de définir une propriété au niveau d’une page ou encore de passer directement tout autre élément auquel vous avez accès dans votre page de la manière suivante :
    <script language="javascript">
    var variableJavascript;
    var uneAutreVariableJavascript ;
    variableJavascript ='<%# variableDotNet %>';
    uneAutreVariableJavascript = '<%# Session[« clédesession »].ToString() %>';
    </script>
    Il ne te reste plus qu'à passer le Controle.UniqueID comme variable

  10. #10
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 55
    Par défaut
    Merci Arthis,Chubyone et Ditch .Vous m'avez vraiment aidé à résoudre le probleme.
    Merci.

  11. #11
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Par défaut
    En fait je voulais t'amener à me poser la question "mais comment je peux faire pour trouver son ID coté client?????"

    mais finalement on t'a refilé la soluce...


    Si tu as une masterpage, avec un TextBox1 dedans, et dans ta page, toi (ou un coéquipier) place un nouveau TextBox1 : coté client il y aurait 2 TextBox1 : donc ambiguité car l'unicité n'est plus respecter. Pour éviter cela, dans une page aspx le designer vérifie l'unicité : mais quid des controls en cascade? des pages intégrées dans la masterpage, des masterpages intégrées dans des masterpage (pour les gueudins).

    Les ID des Controls ASP.NET (pas les Controls HTML) sont hiérarchisés : il y a donc :
    - l'ID (sur la page)
    - le UniqueID (hiérarchisé par rapport aux parents : l'ID "coté serveur")
    - le ClientID (ID finale chez le client qui souvent ressemble à une autoroute)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/01/2012, 18h59
  2. [ASP.NET 2.0] Pagination/Tri avec un Repeater?!
    Par Danny Blue dans le forum ASP.NET
    Réponses: 7
    Dernier message: 28/10/2011, 10h08
  3. Réponses: 6
    Dernier message: 02/12/2006, 20h51
  4. Réponses: 11
    Dernier message: 19/10/2006, 16h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo