Forums d'assistance et de discussion sur les logiciels produits par Mozilla ou créés à partir des technologies Mozilla. Ce site ne dépend pas de la fondation Mozilla et est maintenu par un collectif de bénévoles.
HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Sous IE tout-est-iok, je m'apperçois que le contenu des champs INPUT est bien contenu dans le innerHTML.
Mais ça ne fonctionne pas sous Firefox/mozilla qui oublie de prendre le contenu des champs INPUT.
y-a-t-il une astuce ou moyen différent pour récupérer l'intégralité innerHTML sous firefox ??
je suis un peu mal car je viens de lire ça :
As there is no public specification for this property, implementations differ widely. For example, when text is entered into a text input, IE will change the value attribute of the input's innerHTML property but Gecko browsers do not.
Pour répondre à ta question, utilise le DOM ! Au moins là c'est standardisé, et tu sais à quoi t'attendre (même si ce n'est pas forcément implémenté à 100% partout non plus... mais la base est disponible sans souci !)
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
je ne peux pas utiliser le DOM car le nombre de champ INPUT est dynamique et à la voler.
Voilà ce que je souhaite faire :
j'ai une page qui permet de choisir/position les champs de recherche
ensuite le visiteur en rempli certain
sur l'appuie du bouton recherche, j'enregistre le contenu html (innerhtml) dans une variable hidden.
à la page des résultats, je raffiche sa sélection de champs/recherche et il peut encore en rajouter et refaire une recherche et raffiner encore indéfiniement....
Le nombre de champs n'est pas connu au départ et sera progressif. (par exemple l'admin peut décider d'ajouter des champs de recherche)
Cela fonctionne très bien sous IE grace au innerHTML qui me permet de ne pas me soucier de la structure d'arbre qu'impose le DOM.
donc je suis coincé....et je comprends pourquoi Google n'a pas mis en place cette solution maintenant car elle marche que sous IE.
Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.2) Gecko/20070221 SeaMonkey/1.1.1
je ne peux pas utiliser le DOM car le nombre de champ INPUT est dynamique et à la voler.
Et ?
C'est peut-être plus compliqué, mais on peut faire des boucles sur tous les champs...
Sinon, tu as essayé de forcer le remplissage des attributs value (je ne sais pas comment...) ? Ou bien tu veux dire qu'ils disparaissent complètement ?
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
Non les contenus .value des champs INPUT ne disaparaissent pas, ils sont bien là et passer en POST, seulement ils ne sont pas rapatrié dans un innerHTML...sous Firefox mais bel et heuresuement sous IE.
Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.2) Gecko/20070221 SeaMonkey/1.1.1
Tu peux obtenir tous tes éléments input avec getElementsByTagName(), par exemple.
Cela dit, je ne vois pas pourquoi tu ne fais pas la génération de tes champs côté serveur puisque tu reçois leurs noms et leurs valeurs au moment de l'envoi du formulaire.
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪