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

Dotnet Discussion :

[C#-JQuery] JQuery Corner - Postback


Sujet :

Dotnet

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 89
    Par défaut [C#-JQuery] JQuery Corner - Postback
    Bonjour à tous...

    Voila j'ai un problème :
    J'utilise actuellement pour mes div que je voudrais arrondi, le Corner de Jquery...

    Dans chacun de mes user control, et pour leur div associé, j'applique le code suivant...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <div id="divPanneauRecherche" class="divPanneauRecherche">
     
    	<asp:LinkButton runat="server" ID="btnRechercher" Text="Rechercher" CssClass="Bouton" style="" onclick="Rechercher_Click"/>
    </div>
     
    <script  type="text/javascript" language="javascript">
        $("#divPanneauRecherche").corner("30px");
    </script>
    Au chargement de la page, niquel, tout passe parfaitement pour tout mes userControl et leur div associées...

    Mais lorsqu'un événement se produit ( exemple, le "Rechercher_Click", mon script ne s'exécute plus et n'est pas pris en compte ..

    Mes user control sont contenus dans une page,elle même compris dans une page maitre..

    Si quelqu'un aurait une petite idée pour résoudre ce problème...

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Bonjour,

    Lorsque la page est retournée à la fin du traitement de l'évènement, as-tu toujours dans ta page la div avec l'id "divPanneauRecherche" et le bout de code Javascript ?

    Pour moi, un des 2 doit manquer ...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 89
    Par défaut
    Oui j'ai toujours les deux... J'aimerai exécuter le bout de code Javascript au chargement de ma page... j'ai regardé au niveau des RegisterStartupScript et compagnie ... Mais rien n'y fait...

  4. #4
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    C'est extremement bizarre car le simple fait d'avoir une balise <script></script> dans le body de ta page avec du code Javascript dedans, s'exécute au moment du parsing de ta page.

    Tu peux toujours essayer ça sinon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <body onload="$("#divPanneauRecherche").corner("30px");">
     ...
     ...
     ...
    </body>
    L'évènement onload de body s'exécute une fois que la page est entièrement chargée, ce qui diffère un peu du comportement d'une balise <script> dans le body de ta page ...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 89
    Par défaut
    En faite la balise se trouve a la fin de mon userControl...et non pas dans mon body... Aprés le mettre dans le onLoad ne marche pas... (il ne reconnait pas le caractère "$"... Je suis assez bloqué...

    J'ai essayé vraiment pas mal de chose...

  6. #6
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Escuses moi, c'est plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <body onload="$('#divPanneauRecherche').corner('30px');">
     ...
     ...
     ...
    </body>
    J'ai remplacé les guillemets par des '.

    Si cela ne marche pas, je pense alors que cela viens de JQuery qui n'est pas chargé ...
    Dans Firebug (Onglet Console) ou IE 8, essaie d'exécuter le bout de javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('#divPanneauRecherche').corner('30px');
    Je résume les points qui peuvent faire que ton javascript ne fonctionne pas :
    1. l'élément div id=PanneauRecherche n'existe pas au moment ou ton javascript est exécuté
    2. JQuery n'est pas chargé, donc le javascript plante. D'ailleurs tu devrais avoir une erreur javascript générée
    3. ton code javascript n'est pas exécuté


    Si le fait d'exécuter $('#divPanneauRecherche').corner('30px'); dans la console firebug ne fait rien, c'est qu'il a un problème soit avec le chargement de JQuery, soit que ton élément div n'est pas dans la page.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 89
    Par défaut
    En faite mes userControl qui contienne les div sont chargés mais ne sont pas visible... Quand je les rend visible, ils sont bien "arrondis" ...

    Ensuite sur mon evenement, ils ne sont plus arrondis... Sous Firebug, lorsqu'ils ne sont plus "arrondis" et que je lance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('#divPanneauRecherche').corner('30px');
    Il s'éxecute parfaitement...

    Et mon code ne change pas entre "Arrondi" et "Non Arrondi", le script est toujours présent d'aprés firebug...

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 89
    Par défaut
    Bon problème résolu...

    J'ai ajouté a la class de mon div un divCorner ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div id="divPanneauRecherche" class="divPanneauRecherche divCorner">
     
    	<asp:LinkButton runat="server" ID="btnRechercher" Text="Rechercher" CssClass="Bouton" style="" onclick="Rechercher_Click"/>
    </div>
    Ensuite au chargement de ma master page, je recherche tout les div comportant ce "divCorner" et j'execute le script ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    string script = "$('.divCorner').corner('12px');";         
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "S", script, true);

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

Discussions similaires

  1. [JQuery] Jquery et formulaire
    Par Flynt dans le forum jQuery
    Réponses: 3
    Dernier message: 22/02/2009, 16h21
  2. Réponses: 8
    Dernier message: 13/05/2008, 08h36
  3. Réponses: 2
    Dernier message: 07/04/2008, 17h13
  4. [JQuery] jQuery petite question
    Par rberthou dans le forum jQuery
    Réponses: 1
    Dernier message: 01/04/2008, 14h29
  5. [JQuery] jquery pb d'affichage sosu ie6 et 7
    Par 123quatre dans le forum jQuery
    Réponses: 3
    Dernier message: 17/09/2007, 18h19

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