Trucsweb.com

Forum de discussion

 Forum « Programmation Javascript » (archives)

Re: Appel d'un frameset avec une page specifique

Envoyé: 11 août 2004, 7h19 par Oznog


Salut,

Oui c'est possible en deux étapes.

1. Tu dois passer le nom du fichier dans l'en-tête http (méthode get).

monJeuDeCadres.htm?url=cadre.htm

2. Tu dois générer ton jeu de cadre à l'aide du Javascript.

document.write('<frame SRC="' + url + '" name="cadre">')

Bon, c'est l'idée. Le hic c'est de récupérer une valeur de l'en-tête http. Avec un langage serveur c'est tout simple mais en Javascript c'est une autre histoire.

Par exemple en ASP c'est :
request.querystring("url")

Mais en Javascript c'est :

<html>
<head>
<script type="text/javascript" language="javascript">
<!--
// ********************************************
// Récupération de paramètre d'une requête HTTP
// ou récupération des données d'un formulaire.
// Auteur : Oznog (www.trucsweb.com)
// ********************************************

// NE PAS MODIFIER CE CODE
var paramOk = true;

function FaitTableau(n) {
// Création d'un tableau (array)
// aux dimensions du nombre de paramètres.
this.length = n;
for (var i = 0; i <= n; i++) {
this[i] = 0
}
return this
}

function ParamValeur(nValeur) {
// Récupération de la valeur d'une variable
// Pour créer la variable en Javascript.
var nTemp = "";
for (var i=0;i<(param.length+1);i++) {
if (param[i].substring(0,param[i].indexOf("=")) == nValeur)
nTemp = param[i].substring(param[i].indexOf("=")+1,param[i].length)
}
return Decode(nTemp)
}

// Extraction des paramètres de la requête HTTP
// et initialise la variable "paramOk" à false
// s'il n'y a aucun paramètre.
if (!location.search) {
paramOk = false;
}
else {
// Éliminer le "?"
nReq = location.search.substring(1,location.search.length)
// Extrait les différents paramètres avec leur valeur.
nReq = nReq.split("&");
param = new FaitTableau(nReq.length-1)
for (var i=0;i<(nReq.length);i++) {
param[i] = nReq[i]
}
}

// Décoder la requête HTTP
// manuellement pour le signe (+)
function Decode(tChaine) {
while (true) {
var i = tChaine.indexOf('+');
if (i < 0) break;
tChaine = tChaine.substring(0,i) + '%20' + tChaine.substring(i + 1, tChaine.length);
}
return unescape(tChaine)
}
// -->
</script>
</head>

<frameset cols="200,*">
<frame SRC="menu.htm" name="menu">
<script type="text/javascript" language="javascript">
<!--
var url = "";
if (paramOk) {
url = ParamValeur("url");
document.write('<frame SRC="' + url + '" name="corps">')
} else {
// Page par défaut (accueil) si aucune valeur
document.write('<frame SRC="pageAccueil.htm" name="corps">')
}
// -->
</script>
</frameset>
</html>

Ciao
Oznog


Réponses

 sp spRe: Appel d'un frameset avec une page specifique jed11/8/2004
 sp spRe: Appel d'un frameset avec une page specifique Oznog11/8/2004
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@