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 :

Chemin des pages de contenu, pas de chargement CSS et JS


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Points : 43
    Points
    43
    Par défaut Chemin des pages de contenu, pas de chargement CSS et JS
    Bonjour à tous,

    ma question s'oriente sur l'architecture des répertoires de mon site.
    Lorsque je crée mes pages.aspx dans la racine du projet, il n'y a pas de problème, tout se charge comme il le faut.

    Par contre, lorsque je créer un dossier 'pages' ainsi que des sous-dossier comprenant mes rubriques et que je créer mes pages.aspx dedans, lorsque j'affiche ma page, les CSS et javascript ne sont pas chargés.

    Je précise que mes pages de contenu sont toutes crées à partir d'une master page.
    Mes fichiers JS et CSS sont placés dans le dossier App-Themes/Default/

    Les appels se font dans la MasterPage et plus précisément entre les balise <head></head>, et se font comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <link href="App_Themes/Default/style.css" rel="Stylesheet" type="text/css" />
    <script type="text/javascript" src="App_Themes/Default/scripts/ddaccordion.js"/>
    Une autre question plus général que je me pose, c'est la disposition des pages du site: est-ce bon de créer plusieurs repértoires pour pas que l'on se retrouve avec 50 fichiers dans la racine. Quelles sont vos bonne pratiques?

    Merci beaucoup pour le temps que vous prendrez,

    Cordialement,

    Celas

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Il est en général mieux d'organiser ses fichiers au lieu de se retrouver avec un répertoire fourre-tout dans lequel on a 30000 fichiers, code, javascript, css, images.

    Ton problème de "non-chargement" est lié à l'URL. L'URL est relative par rapport à la position actuelle du fichier. Donc, si tes répertoires sont par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    MonSite
      MesPages
        UnePage.aspx
      App_Themes
        Default
           MonTheme.css
    Il va falloir utiliser depuis UnePage.aspx le chemin suivant pour obtenir MonTheme.css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     ../App_Themes/Default/MonTheme.css
    (".." désigne le répertoire parent du répertoire actuel, "." désigne le répertoire actuel et "~" désigne de répertoire racine de l'application web).

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Merci Kaidan pour tes explications, malgrès tout ça reste un peu flou pour moi. J'ai bien compris l'histoire des url relative avec les ../.., mais faut-il les utiliser partout dans le site?

    Ca marche, mais il faut calculer à chaque fois le nombre de retour, etc, je trouve ça assez long et fastidieux, mais si c'est une bonne méthode cela ne me dérange pas de le faire.

    Par contre pour les url's absolues, ça ne fonctionne pas comme je voudrais.

    par exemple: Lorsque je suis sur une page de mon site comme "monsite/Pages/conseil/audit.aspx" et que je clique sur un lien vers ma page home "monsite/Pages/index.aspx", j'obtiens le message d'erreur suivant : The resource cannot be found.
    HTTP 404.....
    Request URL: "monsite/Pages/conseil/~/Pages/index.aspx", comme si il ne remontait pas le chemin.

    Que faut-il utiliser pour référencer mes pages??? Chemin absolu ou relatif.

    Merci pour vos eclaircissements,

    cordialement,

    yohann

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Tu utilises quoi comme lien exactement pour la homepage ?

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Alors pour ma homepage, voici la référence dans le web.config :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <siteMapNode url="~/Pages/index.aspx" title="home"  description="" >
    </siteMapNode>
    Puis l'appel dans ma masterpage (quand on clique sur le logo de l'entreprise, on attérit direct sur le homepage) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <a href="~/index.aspx">
          <img src="App_Themes/Default/images/logo.png" width="142" height="91" border="0" alt="" runat="server"/>
    </a>

    merci de ton aide,

    celas

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Si tu changes "~/Pages/index.aspx" en "/Pages/index.aspx", ça marche ?

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Non, ça ne marche pas.

    En fait je viens de trouver un élément de réponse, même si ca ne suffit pas à résoudre mon problème.

    -> Il faut que j'ajoute le nom de mon projet website asp.net.
    En effet il semblerais que la racine pour lui soit au niveau du nom de projet, et non pas dans le projet au même endroit que tous nos fichiers

    Bref. je vais tous reprendre du début car là je suis perdu.

    Merci pour tes réponses en tout cas.

    celas

  8. #8
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    sinon, l'utilisation dans une page ou un web controle de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%= This.ResolveUrl("~/Pages/index.aspx") %>
    devrait te donner le chemin peu importe que tu te trouves sur un site web ou dans un repertoire virtuel.

    Bon courage à toi,

  9. #9
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    oui merci j'utilise deja le resolve pour inclure les .js, mais je ne pense pas que ce soit une bonne idée d'en foutre à tous les liens, n'est-ce pas?

    En tout cas merci pour ton aide, je marque résolu

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

Discussions similaires

  1. [Drupal] [DRUPAL 7 ] L'affichage des pages n'est pas formaté
    Par Jon Shannow dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 09/01/2015, 19h49
  2. des pages html appel une autre en css
    Par ertyup dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 26/06/2010, 15h23
  3. Chargement des pages
    Par Stan62970 dans le forum Apache
    Réponses: 1
    Dernier message: 23/01/2007, 20h46
  4. [JavaScript] [SRC]/[FAQ] Les templates JS pour accelerer le chargement des pages
    Par FremyCompany dans le forum Contribuez
    Réponses: 20
    Dernier message: 23/12/2006, 10h58
  5. Comment séparer le contenu des pages de leur structure?
    Par djodjo dans le forum Général Conception Web
    Réponses: 7
    Dernier message: 06/05/2005, 14h48

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