Merci olivthill pour ces éléments de réponses
je vais essayer d'apporter des précisions:
1) pour le moment tous les fichiers , sont ni sur un serveur ni chez le demandeur du site en question, et le seul utilisateur, c'est encore moi qui met au point l'affaire, avec quelques fichiers de tests pas trop compliqués pour effectuer des simulations pour une futur maquette
2) j'ai décidé car je veux modifier des div via le innerHtml (aussi pour me servir de cette etude de cas pour manipuler de l'ajax) d'investiguer la maquette sur de l'AJAX et d'autre part sur des fichiers XML même si je pense que la portabilité de la demande ne l'impose pas
3) j'ai décidé aussi d'une part à la demande du "demandeur" de ne faire qu'une page visible avec des zones css et div qui changent en rapport de clic sur des liens présents eux aussi sur la dite page et par ailleurs et ceci est mon choix les liens auront donc un shéma du style
<a href="page_unique.html?page=nom_d_un_fichier_source.xxx&TITRE=type_de_la_rubrique_du lien">choix_x</a> |
ensuite mon script javascript et la fonction Ecrire se charge (suivant navigateur)
de modifier l'affichage:
- de la div devant afficher la rubrique du menu dans laquelle etait le lien cliqué => c'est le parametre TITRE passé dans l'url
- de la div devant afficher l'information associée au lien cliqué => c'est le parametre page avec nom de fichier contenant l'info sous XML
4) pour l'instant le demandeur n'a pas règlé le problème de l'hébergeur futur et donc je ne peux présumer même si il a été briffé sur le sujet que le choix se porte sur une solution disposant d'un langage coté serveur voir même d'une possibilité de base de donnée (pour mon propre compte j'anime un site également et mon choix s'est porté sur 1&1 qui offre un nom de domaine réservé à ma convenance, du php et une possibilité de base de donnée mysql)
5) le demandeur n'y calcule rien à l'informatique si ce n'est qu'il a comme beaucoup subi, un jour un effet marketing l'inscitant a se procurer un ordinateur, qu'il ne l'utilise qu'occasionnelement pour quelques mails, du youtube un peu de google (et encore) et 3 documents et six griffes de hamster volant, de document office car il a entendu que c'etait gratuit, sans compter une bonne culture de virus, et d'un coup d'un seul il a decouvert que ca pouvait devenir un vecteur pour lui d'expression.
Fort de ca, je voudrais au maximum ne pas le sortir de sa bulle fantasmagorique et lui épargner au maximum du texte balisé qui pour lui est du dialecte cino-sénégalais (ni voyez aucune "loucheté" sectaire ou autre dans ce dernier propos, c'est juste une expression ); par ailleurs de maniere plus directe je veux pas non plus recevoir un mail ou autre et ensuite c'est bibi qui s'adapte. Je veux juste lui fournir du mecanisme qui tient la route, plus quelques notions (il sort pas non plus des fonds abyssals du ruisseau local), une petite doc et hop! apres il se débrouille avec son jouet (bien sûr si de nouvelles contraintes ou améliorations techniques sont nécéssaires, je sortirai mon déguisement de spiderman, mais je veux pas, vous m'aurez compris, jouer avec "son jouet" )
6) fort de ce constat, la plus grosse question pour moi c'est de savoir (sans savoir ce qu'il veut vraiememnt faire de ce nouveau jouet) comment je peux le laisser dans son jargon quotidien, et que ce soit bien lui qui annime son truc et le mette à jour sans trop que je sois derriere tel le surveillant général. Et là, je découvre, que le XML a ete inventé (enfin je le savais un peu avant, mais là c'est une bonne carotte pour faire comme si ) pour universaliser le transport de l'information. Je me dis donc:
- ca parait une bonne idée dans cette affaire
- voila une bonne grosse carotte pour avoir envie de traverser la rive et y pratiquer d'avantage sur l'affaire
Le tout réuni donne les premiers début de code ci au-dessus; moyennant quelques corrections minimes (genre déplacement d'une instruction ou autre) je décide fort des indications trouvées sur le net et mon intuition, disant que le XMLHttpRequest fonctionnait que sous un meme domaine (au sens DNS ), je décide de placer mon code sur une zone retranchée de mon serveur 1&1 et de suite, le code se met à faire exactement ce que je souhaitais (sauf que jusqu'alors j'utilisais ResponseText, pour récupérer le contenu sur le serveur a mettre dans la div)
Question 1ere: existe t'il une facon d'ecrire le code pour qu'indiférement que je sois sur mon ordi entierement en local ou que je place les fichiers sur un serveur hébergeur, je puisse faire les tests (je veux pas installer en local sur mon poste un serveur apache ou IIS )? j'ai cru voir que oui mais j'ai pas tout impacté le code alors proposé
Depuis, j'ai défini une nomenclature pour l'information suivant le standard XML (j'ai pas mis au debut du fichier l'instance <?xml... mais j'ai cru lire que c'etait optionnel)
et maintenant j'essaie par rapport à cet extrait de code sachant que le reste en amont semble conforme à ce qu'il faut faire vis à vis d'ajax, de récupérer les valeurs afin de créer une chaine de caractère qui commencerait par '<blocknote>....' + une valeur trouvée par le tag et le childeNode ....
et retourner la chaine de caractère finale "<blocknote>....</blocknote>" afin que ma fonction Ecrire la mette dans la bonne div via innerHTML
var xmldoc = httpRequest.responseXML;
var root_node = xmldoc.getElementsByTagName('root').item(0);
alert(root_node.firstChild.data); |
je veux pas d'alert moi et je ne comprends pas pourquoi si je place entre deux +
xmldoc.getElementsByTagName('id_de_ma_div_en_cours')[0].childNodes[0].nodeValue
cela me provoque une erreure
Question seconde:est ce que je dois chercher vers des pistes:
- qu'il faille passer par des variables locales javascript pour récupérer chaque élément du retour xml de ma requete avant de pouvoir reconstruire une chaine Html avec
ou
- ou plutot que je me retrouve avec 3 fonctions (Ecrire, Charger et tradxml_doc) qui ne sont pas forcement dans le bon niveau vis à vis du Open de l'HttpRequest
En tout cas j'aimerais bien arriver à récuprérer le contenu de la première sous balise de mon fichier XML test et l'afficher dans la zone prévue en ayant juste envoyé page="souris.xml" dans l'url ca fonctionne avec des des reponses plein texte donc l'espoir est permi avec des reponses xml, non?
Question 3: pour ne pas trop modifier mon fichier test, j'ais pas réussi a trouver la facon de tester si je devais utiliser responseText ou responseXML? c'est peut etre pas posssible?
Message édité par tintin34 le 08-12-2011 à 23:13:46