OVH Cloud OVH Cloud

Récupérer un paramétre en tant que SRC

5 réponses
Avatar
denis
Bonjour,

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé est le
nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...

- si dans page1.html je code "alert(param1);" j'obtiens bien xtableau.js
(mon paramètre est donc bien passé)

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un appel à
un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de "page1.html";
et ça ne donne rien...

C'est surement très basique comme solution, mais je n'ai rien trouvé là
dessus...

Si qqu'un ici à l'idée magique qui décoincera mon problème...

Merci par avance

Denis

5 réponses

Avatar
Thibault
denis wrote:
Bonjour,

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé est le
nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...

- si dans page1.html je code "alert(param1);" j'obtiens bien xtableau.js
(mon paramètre est donc bien passé)

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un appel à
un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de "page1.html";
et ça ne donne rien...

C'est surement très basique comme solution, mais je n'ai rien trouvé là
dessus...

Si qqu'un ici à l'idée magique qui décoincera mon problème...

Merci par avance

Denis





Salut,

Il faut utiliser la méthode javascript location.search
Tout est expliqué ici :
http://www.trucsweb.com/Javascript/trucs.asp?no03&type=5

Notons, que le javascript n'est a priori pas fait pour ca ...
Le mieux serait quand meme d'utiliser des pages dynamiques écrites en
PHP ou en Perl.

A+
--
Thibault

Avatar
Cenekemoi
Bonjour,

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé
est le nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...

- si dans page1.html je code "alert(param1);" j'obtiens bien
xtableau.js (mon paramètre est donc bien passé)

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un
appel à un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de
"page1.html"; et ça ne donne rien...

C'est surement très basique comme solution, mais je n'ai rien trouvé
là dessus...

Si qqu'un ici à l'idée magique qui décoincera mon problème...

Merci par avance

Denis


Rappel : "xtableau.js" est, bien entendu, sur le serveur.

Premier test : inscrit en "dur" ta ligne "<SCRIPT
SRC=xtableau.js></SCRIPT>" et regarde si ça marche. Corrige ce qu'il
faut si nécessaire.

Le premier point validé, ça doit marcher avec une ligne du type :

document.write("<scr"+"ipt src="+ param1 +"></scr"+"ipt>");

--
Cordialement, Thierry ;-)

Avatar
denis
Merci pour vos réponses
Malheureusement, je ne peux pas utiliser le PHP pour faire ce que je veux.
J'ai bien essayé une combinaison des deux.. mais le résultat n'est pas un
RDV.


"denis" a écrit dans le message de news:
cfrakk$m6t$
Bonjour,

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé est le
nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...

- si dans page1.html je code "alert(param1);" j'obtiens bien xtableau.js
(mon paramètre est donc bien passé)

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un appel à
un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de "page1.html";
et ça ne donne rien...

C'est surement très basique comme solution, mais je n'ai rien trouvé là
dessus...

Si qqu'un ici à l'idée magique qui décoincera mon problème...

Merci par avance

Denis





Avatar

je ne peux pas utiliser le PHP pour faire ce que je veux.
J'ai bien essayé une combinaison des deux.. mais le résultat n'est pas un
RDV.

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé est le
nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...



Pas vraiment ...
Il faudrait préférer qque chose comme :

href="../page1.html?param1='xtableau.js'">Page1</a>

(le nom du fichier js externe encadré de ')

- si dans page1.html je code "alert(param1);" j'obtiens bien xtableau.js
(mon paramètre est donc bien passé)



Bon ... alors, tant mieux

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un appel à
un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de "page1.html";
et ça ne donne rien...



et avec (dans le head) :

<script type="text/javascript"><!--
// le truc bazard pour récupérer 'xtableau.js'
param1='defaut';
eval(this.location.search.substring(1));
// puis faire écrire l'appel au JS externe
ext = '<script type="text/'+'javascript" src="'+param1+'">'+'<'+'/sc'+'ript>';
document.write(ext);
// --></script>

que donne-ce ?

--
******** (enlever/remove [OTER_MOI] du/from reply url) *******


Avatar
denis
Voici la soluce...
Merci de vos conseils qui m'ont mis sur la piste
Avec ce code, je peux enfin lire des éléments dans un fichier JS externe et
les insérer dans ma page HTML

Exemple :

le fichier contenant les variables : "tableau.js"
xtitre = "Titre de la page";
xintro = "Ceci est le texte d'introduction";
etc...

la page appelante : index.html
l'appel : <a href="http://mapage.html?param1='tableau.js'"> Ma page </a>

la page appelé : mapage.html
<HTML>
<HEAD>
<SCRIPT language=javascript>
//--- Fonction d'extraction des paramètres de l'URL appelante
function ExtraireParam() {
url = window.location.href;
var exp=new RegExp("[&?]+","g");
var exp2=new RegExp("[=]+","g");
var tabNom=url.split(exp);
var tabParam=new Array();
if (tabNom!=null) {
for (var i=1;i<tabNom.length;i++){
var tabTemp=tabNom[i].split(exp2);
tabParam[tabTemp[0]]=tabTemp[1];
}
}
return tabParam;
}

//--- Extraction du JS fichier des données
var urlParam = ExtraireParam();
var param1=urlParam["param1"];
eval(this.location.search.substring(1));
//--- Appel au JS externe
ext = '<script type="text/'+'javascript"
src="'+param1+'">'+'<'+'/sc'+'ript>';
document.write(ext);
</SCRIPT>

<SCRIPT>
//--- Ecriture du titre dans la barre de titre
var xtitrepage="<TITLE>"+xtitre+" - "+xsstitre+"</TITLE>";
document.write(xtitrepage);
//--- Ecriture du texte d'introduction
var intro=xintro;
document.write("Introduction : "+intro+" A vous de jouer..");
</SCRIPT>
</HEAD>
etc...


"@SM" a écrit dans le message de news:




je ne peux pas utiliser le PHP pour faire ce que je veux.
J'ai bien essayé une combinaison des deux.. mais le résultat n'est pas
un


RDV.

Mon souci...

- Une page "index.html" qui contient un lien vers une autre page
"page1.html" avec passage de paramètre.. en fait le paramètre passé
est le



nom d'un fichier javascript "xtableau.js" : ce qui donne "<a
href="./page1.html?param1=xtableau.js">Page1</a>

Jusque là tout va bien...



Pas vraiment ...
Il faudrait préférer qque chose comme :

href="../page1.html?param1='xtableau.js'">Page1</a>

(le nom du fichier js externe encadré de ')

- si dans page1.html je code "alert(param1);" j'obtiens bien
xtableau.js



(mon paramètre est donc bien passé)



Bon ... alors, tant mieux

Là, je coince...
En effet, je dois utiliser ce paramètre (param1) comme source d'un
appel à



un javascript

je code donc "<SCRIPT SRC=param1></SCRIPT> dans le <head> de
"page1.html";



et ça ne donne rien...



et avec (dans le head) :

<script type="text/javascript"><!--
// le truc bazard pour récupérer 'xtableau.js'
param1='defaut';
eval(this.location.search.substring(1));
// puis faire écrire l'appel au JS externe
ext = '<script type="text/'+'javascript"
src="'+param1+'">'+'<'+'/sc'+'ript>';

document.write(ext);
// --></script>

que donne-ce ?

--
******** (enlever/remove [OTER_MOI] du/from reply url) *******