Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
898 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Un petit problème qui me pose... souci !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Un petit problème qui me pose... souci !

n°1582106
Mxtrem
Posté le 03-07-2007 à 20:15:01  profilanswer
 

Salut les gens ! :hello:  
 
Un petit problème qui va peut être vous paraître simplissime mais sur lequel je pêche.
J'ai réalisé un petit moteur de recherche problème qui lorsqu'il est validé doit - théoriquement - afficher les résultats dans un div par le biais d'xmlhttprequest... Jusque là tout va bien, enfin non : je m'explique.
 
Voici le form :

Citation :


<form method="get" style="display:inline">
<input type="text" id="w" class="inpSEARCH" />  
<input type="button" value="Search !" style="padding:3px; padding-left:8px; padding-right:8px" onclick="SearchOnSubmit();" />
</form>


 
Voici le script qui est appelé par le click sur le button.
 

Citation :


<script language="javascript" type="text/javascript">
function SearchOnSubmit() {
 var w = document.getElementById('w').value;
 startRequest('f/search.php?w='+w,'DIVcontent');
}
</script>


 
Le startRequest() - fonction xmlhttpRequest qui actualise le div fonctionne parfaitement.
Seul problème le w (case où on entre le terme à rechercher) est null (pourtant il me semble bien avoir instancié la variable par document.getElementById('w').value ). Je ne vois donc pas d'où peut venir le problème...
 
En espérant que vous puissiez éclairer ma lanterne ;) Merci !!! :D

mood
Publicité
Posté le 03-07-2007 à 20:15:01  profilanswer
 

n°1582154
torpi
Au travail !!!
Posté le 03-07-2007 à 21:49:57  profilanswer
 

Rien a voir avec le bug connu de document.getELementById() sous IE? Ca marche sous FF ou bien?

n°1582155
Mxtrem
Posté le 03-07-2007 à 21:54:30  profilanswer
 

Nop ça ne marche pas sous FF :D


Message édité par Mxtrem le 03-07-2007 à 21:54:41
n°1582156
Mxtrem
Posté le 03-07-2007 à 21:59:56  profilanswer
 

tiens :


 
essai par toi même :/

n°1582423
Mxtrem
Posté le 04-07-2007 à 15:01:00  profilanswer
 

Problème réglé... sans aucune solution :D
Hier cela ne marchait pas, aujourd'hui oui... :/ Bizzare :??:

n°1582639
kao98
...
Posté le 04-07-2007 à 22:40:51  profilanswer
 

Ce ne serait pas mieux d'accéder à la zone de saisie en utilisant l'arborescence DOM du document plutôt qu'un document.getElementById() ?? (bon, il faudrait donner un nom à ton form et à ton input !)
 
Ici, ça donnerait ça :  
 

Code :
  1. <form name="nom_form" method="get" style="display:inline">
  2. <input name="nom_input" type="text" id="w" class="inpSEARCH" /> 
  3. <input type="button" value="Search !" style="padding:3px; padding-left:8px; padding-right:8px" onclick="SearchOnSubmit();" />
  4. </form>
  5. <!--et dans SearchOnSubmit : -->
  6. var w = document.nom_form.nom_input.value;

Message cité 1 fois
Message édité par kao98 le 04-07-2007 à 22:43:26

---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1582692
cgo2
Dum spiro spero
Posté le 05-07-2007 à 09:29:36  profilanswer
 

kao98 a écrit :

Ce ne serait pas mieux d'accéder à la zone de saisie en utilisant l'arborescence DOM du document plutôt qu'un document.getElementById() ?? (bon, il faudrait donner un nom à ton form et à ton input !)


 
Il me semble que la méthode DOM moderne c'est justement getElementById. L'attribut "name" de la balise "form" n'est gardé que pour des raisons de rétro-compabilité, mais est obsolète (le W3C recommande de le remplacer par un id - voir http://www.w3.org/TR/html4/interac [...] l#h-17.3). Du coup document.form.element est gardé aussi, mais est lui aussi obsolète.


---------------
When it's from Finland it's good.  - Mon blog
n°1582765
kao98
...
Posté le 05-07-2007 à 11:56:02  profilanswer
 

Ok, ben merci pour l'info ;)


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1582789
kao98
...
Posté le 05-07-2007 à 13:07:24  profilanswer
 

Alors, après lecture de plein de pages du w3c, il semblerait que, effectivement, l'attribut Name d'un objet FORM soit déconseillé. En revanche, un objet INPUT doit en avoir un (comme indique [url=http://www.w3.org/TR/html4/interact/forms.html#control-name]ici par exemple[url]).
 
Ainsi, accéder à document.forms[x].nom_element ne semble pas si obsolète que ça. Cependant, je n'ai pas trouvé la méthode actuellement conseillée pour identifier un objet FORM


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1582812
Mxtrem
Posté le 05-07-2007 à 14:09:21  profilanswer
 

Je n'ai pas le moindre souçi avec FF et IE7, IE6, et le navigateur mac (je ne sais plus le nom :sweat:) donc je pense que ce doit être la bonne méthode.
 
Quel est le correspondant de "event" sous firefox ?  
En observant le code source vous verrez qu'il est possible de faire entrée dans INPUT et valider le formulaire (alors qu'il s'agit d'un button et pas d'un submit) mais ce code ne fonctionne QUE sur IE :/ FF n'aime apparemment pas event :/ (jpense que ça doit être ça)

mood
Publicité
Posté le 05-07-2007 à 14:09:21  profilanswer
 

n°1582926
kao98
...
Posté le 05-07-2007 à 17:37:38  profilanswer
 

Sous Opera, ça fonctionne (entrée directement dans la zone de saisie).
 
Sous mac, c'est safari ;)


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1582971
Mxtrem
Posté le 05-07-2007 à 19:01:11  profilanswer
 

Oki merci kao ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Un petit problème qui me pose... souci !

 

Sujets relatifs
probleme fichier téléchargé avec telechargement forcé de php[resolut] Probleme de compilation avec QtXml
[javascript] problème de récursivitéProblème de copier coller de données depuis un classeur fermé.
Problème de conditionBatch Probleme Echo sur serveur distant
Problème saut ligne RSS => HTML via XSLGros probleme map sous IE
problème pour mettre un fond dans <body>problème d'onglet
Plus de sujets relatifs à : Un petit problème qui me pose... souci !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR