|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Sam Lion a écrit :
> Bonjour, > > J'ai voulu m'essayer à XMLHttpRequest avec un problème simple : sur une page > web, l'utilisateur de mon site peut faire une sélection d'articles de presse > (dans l'esprit d'un caddie). Sur cette page, sa sélection apparait en bas de > l'écran dans un bloc "div" (nommé 'espace'). Quand sur cette page il clique > sur un l'article, cela ouvre une fenêtre pop-up dans laquelle il peut > classer cet article dans des dossiers. > > Quand il ferme la pop-up, j'ai un "Onfocus=recherche()" sur la page web, qui > rafraichit le bloc div (voir a quoi correspond recherche() ci dessous) > Le rafraichissement fonctionne parfaitement sur ie et sur firefox. > Par contre, une fois qu'un rafraichissement a eu lieu, les liens hypertextes > présents dans le bloc div et permettant d'ouvrir une sélection dans une > pop-up ne fonctionnent plus sous firefox. > > J'ai essayé différentes syntaxes pour le lien hypertexte : appel d'une > fonction qui ouvre la pop-up, un javascript:window.open(xxx,xxx,xxx); ou > même un simple lien vers un autre site etc. mais rien n'y fait : après un > rafraichissement du bloc div les liens hypertextes ne fonctionnent plus sous > firefox. > Pensez-vous que cela vient d'une erreur dans le code ci-dessous ? (trouvé > sur la toile...) > > Merci d'avance... > ---------- > function writediv(texte) > > { > > document.getElementById('espace').innerHTML = texte; > > } > premièrement : la fonction recherche n'a pas besoin de paramètre !!! deuxio : que produit inc_espace.php ? il donne certainement un page HTML avec les balises <head> <html> <body> etc.. dans ce cas si vous ne pouvez changer inc-espace.php par un fichier texte, il faudra certainement le visualiser dans une FRAME G > function recherche(recherche) > > { > > texte = file('inc_espace.php') > > writediv(texte); > > } > > function file(fichier) > > { > > if(window.XMLHttpRequest) // FIREFOX > > xhr_object = new XMLHttpRequest(); > > else if(window.ActiveXObject) // IE > > xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); > > else > > return(false); > > xhr_object.open("GET", fichier, false); > > xhr_object.send(null); > > if(xhr_object.readyState == 4) return(xhr_object.responseText); > > else return(false); > > } > > > |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
> êtes-vous sûr que inc_espace.php renvoie uniquement les colonnes d'un > tableau ? php renvoie automatiquement des balises de pages HTML ! > pour vérifier faites appel manuellment à inc_espace.php et visualiser le > résultat. > bonne chance > G Bah je pense que oui, inc_espace me renvoie juste des echo du code html à placer dans le bloc div Ci-dessous le code renvoyé entre les td. Yves ----------------- <td> <div id='espace'> <table width='205' border='0' align='center' cellpadding='0' cellspacing='0' bgcolor='#FFFFFF'> <tr> <td valign='top'> <table width='200' border='0' align='center' cellpadding='0' cellspacing='0'> <tr> <td class='verdanagras'> 3 dossier(s) </td> </tr> <tr> <td class='arialgris' bgcolor='#E6EEF1'><A href='javascript:void(0);' class='lienrouge' onClick="MM_openBrWindow('selection.php?dossier=0' ,'','scrollbars=yes,width=650,height=660')"><img src='img/dossier.gif' width='16' height='9' align='absmiddle' border='0'></a> <strong>anne</strong> | 1 article(s)</td> </tr> <tr> <td class='arialgris' bgcolor='#FFFFFF'><A href='javascript:void(0);' class='lienrouge' onClick="MM_openBrWindow('selection.php?dossier=1' ,'','scrollbars=yes,width=650,height=660')"><img src='img/dossier.gif' width='16' height='9' align='absmiddle' border='0'></a> <strong>associations</strong> | 2 article(s)</td> </tr> <tr> <td class='arialgris' bgcolor='#E6EEF1'><A href='javascript:void(0);' class='lienrouge' onClick="MM_openBrWindow('selection.php?dossier=2' ,'','scrollbars=yes,width=650,height=660')"><img src='img/dossier.gif' width='16' height='9' align='absmiddle' border='0'></a> <strong>associations fiscalité</strong> | 11 article(s)</td> </tr> <tr> <td> </td> </tr> </table> </td> </tr> </table> </div> </td> |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
Sam Lion a écrit :
> > Ci-dessous le code renvoyé entre les td. > Yves > ----------------- > <td> est-ce que ce code revoyé par le php n'est pas un peu erroné ? - ce <td> est-il bien nécessaire ? (n'existe-il pas déjà ?) - de même que le div 'espace' ? > <div id='espace'> on va donc estimer que le php requesté commence ici : > <table width='205' border='0' align='center' > cellpadding='0' cellspacing='0' bgcolor='#FFFFFF'> > <tr> > <td valign='top'> > <table width='200' border='0' > align='center' cellpadding='0' cellspacing='0'> > <tr> > <td class='verdanagras'> > 3 dossier(s) > </td> > </tr> > <tr> > <td class='arialgris' > bgcolor='#E6EEF1'><A href='javascript:void(0);' class='lienrouge' > onClick="MM_openBrWindow('selection.php?dossier=0' ,'','scrollbars=yes,width=650,height=660')"><img > src='img/dossier.gif' width='16' height='9' align='absmiddle' > border='0'></a> Pour le lien j'ussions préféré : <A href="selection.php?dossier=0" class="lienrouge" onClick="return MM_openBrWindow(this.href,'','scrollbars=yes,width =650,height=660');" ><img src='img/dossier.gif' width='16' height='9' align='absmiddle' border='0'></a> restant à savoir ce que fabrique la MacroMerde fonction : MM_openBrWindow(blabla) qui devra renvoyer false en fin d'exe > <strong>anne</strong> | 1 > article(s)</td> > </tr> [...] Le curieux est que chez moi (et un peu modifié) ça fonctionne correctement : http://perso.orange.fr/stephane.mori.../get_liens.htm le fichier requesté n'est pas un php "intelligent" http://perso.orange.fr/stephane.mori.../set_liens.txt -- Stephane Moriaux et son (moins) vieux Mac déjà dépassé |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
>> <div id='espace'>> on va donc estimer que le php
>> requesté commence ici : >> <table width='205' border='0' align='center' Oui oui il commence bien à cet endroit j'avais mis le tout pour que l'on voit bien que tout est envoyé dans le td MERCI !! MERCI !! MERRRRRRRRRRRRRRRRRRRRRRRRCI ! Cela fonctionne ! Merci d'avoir passé du temps sur ma question c'est très sympa. Je n'ai pas compris pourquoi cela marche (je chercherai demain), mais simplement en remplaçant les anciennes fonctions (recherche et file) par les votres cela marche sans problème sous firefox... Merci encore Yves |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
Sam Lion a écrit :
> > MERCI !! MERCI !! MERRRRRRRRRRRRRRRRRRRRRRRRCI ! > Cela fonctionne ! > simplement en remplaçant les anciennes fonctions (recherche et file) par les > votres cela marche sans problème sous firefox... C'est donc certainement la fonction recherche(recherche) (dont attribut est le même que la fonction et peut confusionner le JS) remplacée par recherche(recherch) qui doit jouer, vu que file() est quasi inchangée. De même je joue un peu la sécurité avec : <a href="set_liens.txt" onclick="return recherche(this);"> où le href est renseigné clairement (au cas où le JS capote) et où le onclick force le recherche() par le return (pour lancer l'appel du lien on attend le résultat de recherche() ) -- Stephane Moriaux et son (moins) vieux Mac déjà dépassé |
|
![]() |
| Outils de la discussion | |
|
|