|
|
|
|
Afficher du html en javascript
Dernière réponse le 9 jui 2004 à 17:03:23 AnaGraM, le 7 jui 2004 à 21:47:25Bonjour !
Je voudrais afficher dynamiquement du html dans un script javascript. J'ai trouvé tout pleins d'exemples sur le web mais je n'arrive à en faire fonctionner aucun ...
Je voudrais en fonction d'un résultat précédent afficher des frames.
document.write("salut");
document.write ('<FRAMESET COLS="112,*">');
document.write ('<FRAME SRC="menu.htm" name="bar" NORESIZE>');
document.write ('<FRAME SRC="contenu.htm" name="princ">');
document.write ('</FRAMESET>');
Mais voilà ! Je n'ai que salut qui s'affiche ... Quelqu'un aurait une idée ?
Merci d'avance
Exemple du code en tête de page forcé par un hébergeur (gratuit) pour faire sa publicité :
<script language="javascript">
if(window == window.top) {
var address=window.location;
var s='<html><head><title>'+'</title></head>' +
'<frameset cols="*,140" frameborder="0" '+
' border="0" 'framespacing="0" '+
' onload="return true;" onunload="return true;">'+
'<frame src="'+address+'?" name="memberPage" '+
' marginwidth="0" marginheight="0" '+
' scrolling="auto" noresize>'+
'<frame src="http://{page_de_l_hebergeur_etc}" '+
' marginheight="0" scrolling="auto" noresize>'+
'</frameset>'+
'</html>';
document.write(s);
}
</script>
|
Merci pour toutes vos réponses ;)
|
Re,
document.write(' <frameset cols="116,*">');
document.write(' <frame name="Sommaire" src="Sommaire.htm target="MainPage"');
document.write(' <frame name="MainPage" src="Home_f.htm target="MainPage"');
document.write(' </frameset>');
Par contre, si je l'insère dans un if, il ne fonctionne plus !!! if(urlParam["param1"] == 1){
document.write ("salut");
document.write(' <frameset cols="116,*">');
document.write(' <frame name="Sommaire" src="Sommaire.htm target="MainPage"');
document.write(' <frame name="MainPage" src="Home_f.htm target="MainPage"');
document.write(' </frameset>');
}
Où est la faille svp ?? |
J'ai encore continué à batailler et j'en arrive à ça :
<html>
<script language="JavaScript"><!--
// Fonction d'extraction des paramètres
function TJSExtraireParam() {
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;
}
// Appel de la fonction et création du tableau des paramètres
var urlParam = TJSExtraireParam();
if(urlParam["param1"] == 1){
document.write(' <frameset cols="116,*">');
document.write(' <frame name="Sommaire" src="Sommaire.htm" target="MainPage">');
document.write(' <frame name="MainPage" src="Home_f.htm" target="MainPage">');
document.write(' </frameset>');
}
//--></script>
<body>
</body>
</html>
Cet ecemple fonctionne !!! Par contre, si je met du javascript entre <body> et </body> ça ne fonctionne plus.C'est embetant de ne pouvoir rien mettre entre <body>. Si je crée une fonction entre <head> et </head> et que je l'appele entre les body, ca ne refonctionne plus ! Là, ça me dépasse. Qu'est-ce qui se passe svp ? |
Voilà le code qui fonctionne si je ne met rien entre <body></body> (code posté au dessus)
<html>
<script language="JavaScript"><!--
// Fonction d'extraction des paramètres
function TJSExtraireParam() {
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;
}
// Appel de la fonction et création du tableau des paramètres
var urlParam = TJSExtraireParam();
if(urlParam["param1"] == 1){
document.write(' <frameset cols="116,*">');
document.write(' <frame name="Sommaire" src="Sommaire.htm" target="MainPage">');
document.write(' <frame name="MainPage" src="Home_f.htm" target="MainPage">');
document.write(' </frameset>');
}
//--></script>
<body>
</body>
</html>
et le code que je voudrais mais qui ne m'affiche pas de frame ... <HTML>
<HEAD>
<SCRIPT language=javascript>
</SCRIPT>
</HEAD>
<body>
<SCRIPT language=javascript>
// Fonction d'extraction des paramètres
function TJSExtraireParam() {
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;
}
// Appel de la fonction et création du tableau des paramètres
var urlParam = TJSExtraireParam();
</SCRIPT>
<SCRIPT language=javascript>
if(urlParam["param1"] == 1){
document.write(' <frameset cols="116,*">');
document.write(' <frame name="Sommaire" src="Sommaire.htm" target="MainPage">');
document.write(' <frame name="MainPage" src="Home_f.htm" target="MainPage">');
document.write(' </frameset>');
}
</SCRIPT>
<BR><BR><BR>
</BODY>
</HTML>
Si la fonction TJSExtraireParam() se trouve entre <head> </head>, c'est pareil ... |
Tiens, j'ai trouvé ceci :
|

