11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

j'utilise sur le nouveau template de mon blog le code suivant :

    <form id="adress">
     <input type="text" value="http://kevin.descoubes.free.fr<?php echo $_SERVER['REQUEST_URI']; ?>" onclick="this.value='http://';" 
	 onkeypress="if(event.keyCode == 13) document.location.href=this.value;" />
    </form>


Le problème, c'est que quand on tape une URL dans cette barre d'adresse donc, et qu'on appuie sur entrer, ca marche environ une fois sur deux :| !
Smiley eek .

Pour tester , c'est ici (choisir la skin : "Mozilla Firefox - iCandy Junior")
ahh.. euhh.. mici pour le lien Smiley langue
lol..


donc...

a écrit :
Ici, le <form> est vraiment pour le fun, enfin, pour pas qu'il y'ait un <input /> qui se ballade tout seul ...

Le value vaut donc la racine de mon blog, suivi de la page courante où l'on se trouve ($_SERVER['REQUEST_URI']).

Au clic , on remplate cette valeur par http:// , et il suffit de taper l'URL à laquelle on veut se rendre, puis de taper entrer (onkeypress). Malheureusement, pour une raison encooore indéterminée, ca fonctionne à peu près une fois sur deux pour l'instant ....



si j'ai bien compris.. cé tout simple, tu veux qu'à partir de ta page, on puisse se rendre à une autre page cé ca? N'importe laquelle qu'on tape, même si c'est pas sur ton propre site...

En fait... si c'est ça... j'ai essayé plusieurs fois et ca n'a jamais fonctionné Smiley ohwell


Bon,
Premièrement...

onkeypress="if(event.keyCode == 13)
 document.location.href=this.value;" />


pkoi le / ?

une erreur de frappe peut-être Smiley cligne essait sans.. ce n'est peut-être que ça le problème.

onkeypress="if(event.keyCode == 13)
 document.location.href=this.value;">

Modifié le 01 Feb 2005 - 17:17
Modérateur
Non Roxy, le / sert à fermer la balise input, en syntaxe XHTML.

Kevin, pourquoi veux-tu utiliser du javascript pour faire ca ? Personnellement, j'utiliserais un input text avec un form qui se soumettrait à une page (php, coldfusion ou asp) qui récupérerait la valeur de l'input et ferait une redirection, tout simplement. Ce serait plus accessible et ca fonctionnerait à tout coup. Smiley smile
Typiquement le genre de bidouille à éviter en javascript. Il y a un truc bien, fonctionnel, fait pour, qui s'appelle les redirections côté serveurs.
Modérateur
C'est ce que j'ai proposé. Smiley confus C'est vrai que je n'ai pas spécifié que la redirection se ferait côté serveur, mais on pouvait le déduire.

J'ai faim moi ! a+ ! Smiley smile
D'accord, je vais faire ça en PHP, merci.

Juste un truc : est-ce que cela fonctionne chez vous ?! Personnellement, en local, ca fonctionne environ 3 fois sur 4 , et sur Free, je dirais une fois sur 2 , enfin, pour moi !