OVH Cloud OVH Cloud

document.location.href problème IE , Mozilla

5 réponses
Avatar
martinhelene
Bonjour,
Je cherche =E0 r=E9cup=E9rer les param=E8tres d'un applet en provenance
d'un menu et autant avec cette formule
"document.location.href " cela fonctionne sur Firefox 5.0 autant IE 7.0
n'est pas du tout impact=E9; avez vous d=E9j=E0 rencontr=E9 ce probl=E8me?
Merci

5 réponses

Avatar
ASM
Bonjour,
Je cherche à récupérer les paramètres d'un applet en provenance
d'un menu et autant avec cette formule
"document.location.href " cela fonctionne sur Firefox 5.0 autant IE 7.0
n'est pas du tout impacté; avez vous déjà rencontré ce problème?


On n'est pas devin ...
sans le code complet employé ... dur dur !

Si c'est une question de JavaScript pur :

- l'url du fichier affiché c'est : window.location.href

- récup d'un des params de l'applet d'id = 'id_applet',
tenter (pour param 'url') :
var p = document.getElementById('id_applet');
p = p.getElementsByTagName('PARAM');
if(p && p.length>0) {
for(var i=0; i<p.length; i++) {
if(p[i].name && p[i].name=='url' && p[i].value)
return p[i].value;
}
}

Si c'est un truc Java :
- comment récupères-tu ce href de l'applet ?
- l'ActiveX correspondant est-il prévu ?

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé

Avatar
martinhelene
Le vl'a donc
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>WEB PROXY</title>
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<script language="javascript" src="../../lib/main.js"
type="text/javascript"></script>
<link href="../../lib/main.css" type="text/css" rel="stylesheet">
<script language="javascript" type="text/javascript">
function getURLParam(strParamName){

var strReturn = "";
var strHref = document.location.href;
if ( strHref.indexOf("&") > -1 ){
var strQueryString =
strHref.substr(strHref.indexOf("&")).toUpperCase();
var aQueryString = strQueryString.split("&");
for ( var iParam = 0; iParam < aQueryString.length; iParam++ ){
if (aQueryString[iParam].indexOf(strParamName + "=") > -1 ){
var aParam = aQueryString[iParam].split("=");
strReturn = aParam[1];
break;
}


}
}
return strReturn;
}
</script>

</head>
<body>
<table width="100%" height="100%" border="0" id="Table1">
<tr>
<td class="title">

</td>
</tr>
<tr>
<td align="center" height="100%">

<applet name="Web Proxy" codebase="../../classes"
archive="webproxy.jar" code="com.transparentready.webproxy.WebProxy"
width="100%" height="100%">
<!-- archive="rde.jar, ui_rde.zip, namespace.zip" -->
<param name="CONFIG_FILE"
value="../../webproxy/config/topology.xml">
<script language="javascript"
type="text/javascript">document.write("<param name='MODE'
value='"+getURLParam('MODE')+"'");</script>
</applet>
</td>
</tr>
</table>
</body>
</html>


Quand à cette page elle est appelée par le code suivant :
["Web Proxy",
["Configuration",
["Edition",
"../../../secure/system/webproxy.htm?Language=English&MODEíITION"],
["Discovery",
"../../../secure/system/webproxy.htm?Language=English&MODE=DISCOVERY" ]],
["Animation",
"../../../secure/system/webproxy.htm?Language=English&MODE=ANIMATION" ]]


Et c'est le paramètres mode qui m'interesse en fait.
Il n'y a pas d'activex de prévu pour l'instant mais je suis néophyte
en la matière, donc s'il en faut un ben je vais me débrouiller.Mais
en fait que je pensais que ce simple code (je parle de celui d'au
dessus ) me permettrait de récupéer le paramètre qui m'interesse.
Merci du temps que tu as passé à lire ce mail
Avatar
ASM
Le vl'a donc


OK

c'est donc bien :
top.location.href
ou
self.location.href
ou
window.location.href

et il manque un '>' dans ton document.write()


<script type="text/javascript">

function ecrire(strParamName) {
var mode = getURLParam(strParamName);
if(mode!=''; ) {
document.write("<param name='MODE' value='"+mode+"'>");
}
}

function getURLParam(strParamName){
var strReturn = "";
var strHref = top.location.href.toString();
if ( strHref.indexOf("&") > -1 ){
var strQueryString = strHref.substr(strHref.indexOf("&"));
var aQueryString = strQueryString.split("&");
for(var iParam = 0; iParam < aQueryString.length; iParam++ ){
if(aQueryString[iParam].indexOf(strParamName + "=") > -1 ){
var aParam = aQueryString[iParam].split("=");
return = aParam[1];
// ou directement :
// return aQueryString[iParam].split("=")[1];
}
}
}
return '';
}
</script>


Et pour le param dans le html :

<script type="text/javascript">
ecrire('MODE');
</script>
</applet>



HTH

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé

Avatar
martinhelene
Ca n'a pas marché...pour IE bien sûr
Mais en fait tout les messages "alert" que j'ai essayé de mettre entre
les balises de l'applet n'ont pas été envoyées au navigateur. C'est
qu'il y a surement un soucis de ce côté là.

Le vl'a donc


OK

c'est donc bien :
top.location.href
ou
self.location.href
ou
window.location.href

et il manque un '>' dans ton document.write()


<script type="text/javascript">

function ecrire(strParamName) {
var mode = getURLParam(strParamName);
if(mode!=''; ) {
document.write("<param name='MODE' value='"+mode+"'>");
}
}

function getURLParam(strParamName){
var strReturn = "";
var strHref = top.location.href.toString();
if ( strHref.indexOf("&") > -1 ){
var strQueryString = strHref.substr(strHref.indexOf("&"));
var aQueryString = strQueryString.split("&");
for(var iParam = 0; iParam < aQueryString.length; iParam++ ){
if(aQueryString[iParam].indexOf(strParamName + "=") > -1 ){
var aParam = aQueryString[iParam].split("=");
return = aParam[1];
// ou directement :
// return aQueryString[iParam].split("=")[1];
}
}
}
return '';
}
</script>


Et pour le param dans le html :

<script type="text/javascript">
ecrire('MODE');
</script>
</applet>



HTH

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé



Avatar
ASM
Ca n'a pas marché...pour IE bien sûr


http://support.microsoft.com/kb/214780/fr
http://search.microsoft.com/results.aspx?mkt=fr-FR&setlang=fr-FR&q=applet

balise applet est à remplacer par balise object :
http://www.aliasdmc.fr/balise/zone_html_applet.html
http://joliclic.free.fr/html/object-tag/object-java.xhtml




--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé