Javascript : recuperer un bout d'url
rekam
-
Bobinours Messages postés 2903 Statut Membre -
Bobinours Messages postés 2903 Statut Membre -
Bonjour à tous !
Je suis entrain de faire un script qui, dans un premier temps, va me chercher l'url de la page courante, et qui, dans un deuxième temps, me coupe cette url et me rend juste ce que je veux.
Par exemple, avec document.location, je récupère ceci : http://www.editeurjavascript.com/forums/newtopic.php
ça c bon. Maintenant, je voudrais sortir de là uniquement "newtopic".
g pensé faire comme ça :
var urlCourant = document.location;
alert(urlCourant);
var i;
var pos;
var nomPage;
var positionDepart;
var nbSlashes = 0;
for (i = 0; i <= urlCourant.length; i++) {
pos = urlCourant.charAt(i);
alert(pos);
if (pos == "/") {
nbSlashes++;
}
if (nbSlashes == 4) {
// 4 slashes et on arrive au nom de la page. On sauvegarde cette position
positionDepart = i;
}
if (pos == ".") {
// on enregistre ce bout d'url, sans "/" , sans ".", juste le nom de la page.
nomPage = urlCourant.substring(positionDepart, i-1);
break;
}
}
alert(nomPage);
Théoriquement, l'alert devrait me rendre "newtopic", mais g une erreur javascript.
Si qqun voit où, ben chapeau ;) !!
Je suis entrain de faire un script qui, dans un premier temps, va me chercher l'url de la page courante, et qui, dans un deuxième temps, me coupe cette url et me rend juste ce que je veux.
Par exemple, avec document.location, je récupère ceci : http://www.editeurjavascript.com/forums/newtopic.php
ça c bon. Maintenant, je voudrais sortir de là uniquement "newtopic".
g pensé faire comme ça :
var urlCourant = document.location;
alert(urlCourant);
var i;
var pos;
var nomPage;
var positionDepart;
var nbSlashes = 0;
for (i = 0; i <= urlCourant.length; i++) {
pos = urlCourant.charAt(i);
alert(pos);
if (pos == "/") {
nbSlashes++;
}
if (nbSlashes == 4) {
// 4 slashes et on arrive au nom de la page. On sauvegarde cette position
positionDepart = i;
}
if (pos == ".") {
// on enregistre ce bout d'url, sans "/" , sans ".", juste le nom de la page.
nomPage = urlCourant.substring(positionDepart, i-1);
break;
}
}
alert(nomPage);
Théoriquement, l'alert devrait me rendre "newtopic", mais g une erreur javascript.
Si qqun voit où, ben chapeau ;) !!
A voir également:
- Javascript : recuperer un bout d'url
- Telecharger javascript - Télécharger - Langages
- A javascript error occurred in the main process - Forum Windows
- Afficher un tableau javascript en html ✓ - Forum Javascript
- Javascript arrondi - Forum Javascript
- Javascript arrondi après la virgule ✓ - Forum Windows
2 réponses
Salut,
Il existe aussi lastIndexOf, nettement plus pratique dans ce cas : http://selfhtml.selfhtml.com.fr/tecl.htm#a16
Ainsi que la variable document.location.pathname qui contient uniquement la partie non DNS (et non paramètre) : /forums/newtopic.php
http://bobin.underlands.org/objets-et-methodes.php?parametres=inutiles&maispour=lexemple
Avec ça, il suffit de faire :
<script type="text/javascript">
var uriCourant = document.location.pathname;
alert(uriCourant);
var indiceDepart = uriCourant.lastIndexOf('/')+1; // Plus 1 car on ne veut pas le '/'.
var indiceArrivee = uriCourant.length-4; // Moins les 4 caractères de l'extension.
var nomPage = uriCourant.substring(indiceDepart, indiceArrivee);
alert(nomPage);
</script>
http://bobin.underlands.org/test/rekam.htm?avecUrl=/des%20params/%20à%20gogo
Si tu ne sais pas la taille de l'extention, tu peux rendre dynamique le site toujours avec lastIndefOf('.');
-= Bobinours =-
Il existe aussi lastIndexOf, nettement plus pratique dans ce cas : http://selfhtml.selfhtml.com.fr/tecl.htm#a16
Ainsi que la variable document.location.pathname qui contient uniquement la partie non DNS (et non paramètre) : /forums/newtopic.php
http://bobin.underlands.org/objets-et-methodes.php?parametres=inutiles&maispour=lexemple
Avec ça, il suffit de faire :
<script type="text/javascript">
var uriCourant = document.location.pathname;
alert(uriCourant);
var indiceDepart = uriCourant.lastIndexOf('/')+1; // Plus 1 car on ne veut pas le '/'.
var indiceArrivee = uriCourant.length-4; // Moins les 4 caractères de l'extension.
var nomPage = uriCourant.substring(indiceDepart, indiceArrivee);
alert(nomPage);
</script>
http://bobin.underlands.org/test/rekam.htm?avecUrl=/des%20params/%20à%20gogo
Si tu ne sais pas la taille de l'extention, tu peux rendre dynamique le site toujours avec lastIndefOf('.');
-= Bobinours =-