Javascript: pb avc un indexOf
omar
-
PhP Messages postés 1774 Statut Membre -
PhP Messages postés 1774 Statut Membre -
Voila le but (partiel de ce script) est de récupérer le nom dune frame donnée
function essai()
{
var t=parent.window.framehaute.location;
//var s=t.indexOf("site.htm");
return t
}
Donc si je fais doucment.write(essai());
ca écrit:
c:\\mes documents\site.htm
Or je ne voulais que récupérer le "site.htm"
(je précise que dans ma définition de mes frames en frame src j ai mis un chemin relatif qui est site.htm et non le chemon absolu)
Donc je penssais utiliser la fonction indexOf
var s=t.indexOf("site.htm");
mais il me semble que la variable t n est pas un string et donc ca bug coment faire marche cela?
je voudrais savoir donc si cette adresse absolu contient le mot "site.htm"
Merci d avance!!
function essai()
{
var t=parent.window.framehaute.location;
//var s=t.indexOf("site.htm");
return t
}
Donc si je fais doucment.write(essai());
ca écrit:
c:\\mes documents\site.htm
Or je ne voulais que récupérer le "site.htm"
(je précise que dans ma définition de mes frames en frame src j ai mis un chemin relatif qui est site.htm et non le chemon absolu)
Donc je penssais utiliser la fonction indexOf
var s=t.indexOf("site.htm");
mais il me semble que la variable t n est pas un string et donc ca bug coment faire marche cela?
je voudrais savoir donc si cette adresse absolu contient le mot "site.htm"
Merci d avance!!
A voir également:
- Javascript: pb avc un indexOf
- 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 arrondir à 2 décimales - Forum Webmastering
4 réponses
Salut omar et à tous,
Un petit test (sous I.E.5) avec "typeof(t)" indique en effet que "t" est un "objet". A défaut d'en explorer les attributs, j'ai essayé :
u = "" + t ;
qui a l'air de fonctionner comme un cast "(char *)" du C et fournit une chaîne sur laquelle il est possible d'employer les méthodes relatives aux chaînes.
Un petit test (sous I.E.5) avec "typeof(t)" indique en effet que "t" est un "objet". A défaut d'en explorer les attributs, j'ai essayé :
u = "" + t ;
qui a l'air de fonctionner comme un cast "(char *)" du C et fournit une chaîne sur laquelle il est possible d'employer les méthodes relatives aux chaînes.
Et bien je pensais al Oui de Finess en disqant cela mais j'aurais osi bien peu t apelle MICHAEL JACKSON Ouzbe!!
A+
A+
Salut Omar,
"Et mes acclamations, mon enthousiame !
...
Mon bon Blaze ... Qu'il est bon ce Blaze !
...
Ils m'acclamaient pas !
Ils m'acclamaient pas !"
LFDG
Bien revenons à des trucs moins drôles : Javascript
window.location renvoi un objet et pas une chaîne de type String (qui est d'ailleurs également un objet mais passons)
Donc pour utiliser la méthode .indexOf() il faut passer une chaîne
Et cette chaîne ben tu la trouves tout bêtement dans href :
Ce qui donne :
var t=parent.window.framehaute.location.href;
var s=t.indexOf("site.htm");
si s contient -1 alors la chaîne recherchée n'est pas trouvée.
Autrement voici une fonction super utile que j'ai piquée dans la doc JavaScript et qui te permet de parcourir toutes les propriétés d'un objet (bon y'a qd même quelques cas où elle plante mais c'est rare)
Disons que ca permet de faire une sorte d'introspection
Marche avec IE et NS
Par ex remplace ta fonction essai() par
et appelles la : tu verras c'est magique !
Lorsque l'objet possède trop de propriétés dans ce cas il faut filtrer un peu sinon l'affichage n'est plus assez grand.
Don Saluste
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]
"Et mes acclamations, mon enthousiame !
...
Mon bon Blaze ... Qu'il est bon ce Blaze !
...
Ils m'acclamaient pas !
Ils m'acclamaient pas !"
LFDG
Bien revenons à des trucs moins drôles : Javascript
window.location renvoi un objet et pas une chaîne de type String (qui est d'ailleurs également un objet mais passons)
Donc pour utiliser la méthode .indexOf() il faut passer une chaîne
Et cette chaîne ben tu la trouves tout bêtement dans href :
Ce qui donne :
var t=parent.window.framehaute.location.href;
var s=t.indexOf("site.htm");
si s contient -1 alors la chaîne recherchée n'est pas trouvée.
Autrement voici une fonction super utile que j'ai piquée dans la doc JavaScript et qui te permet de parcourir toutes les propriétés d'un objet (bon y'a qd même quelques cas où elle plante mais c'est rare)
Disons que ca permet de faire une sorte d'introspection
Marche avec IE et NS
function show_props(obj, objName)
{
var result = ""
for (var i in obj)
{
result += objName + "." + i + " = " + obj[i] + "\n"
}
return result;
}
Par ex remplace ta fonction essai() par
function essai()
{
alert(show_props(parent.window.framehaute.location,"parent.window.framehaute.location"));
}
et appelles la : tu verras c'est magique !
Lorsque l'objet possède trop de propriétés dans ce cas il faut filtrer un peu sinon l'affichage n'est plus assez grand.
Don Saluste
PhP [Push the button,Don't push the
. button,Trip the station,Change the channel]