Select lien et iframe [Fermé]

Signaler
Messages postés
1785
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
-
Messages postés
1785
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
-
Bonjour,
j'ai un menu "select" (mode formulaire) dans ma page 2 dans un iframe de ma page 1 de ce type :
Page 1 :
<iframe width="700" src="page2.html" frameborder="0" height="140">  
</iframe>

Page 2 :
<body>
<head>  
<script type="text/JavaScript">  
function MM_jumpMenu(targ,selObj,restore){  
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");  
if (restore) selObj.selectedIndex=0;  
}  
</script>  
</head>  
<body>  
<select onchange="MM_jumpMenu('parent',this,0)" style="width:65px">  
<option selected="selected" value="">Autres</option>  
<option value="liens1">liens1</option>  
<option value="liens2">liens2</option>  
<option value="liens3">liens3</option>  
</select></body> 


Le problème et que quand je sélectionne le lien 1 par exemple, il m'ouvre le tout dans une nouvelle alors que je voudrais qu'il l'ouvre dans l'iframe de la page 1
Comment faire svp ?
Merci.



On s'ennuie pas avec l'informatique :)

2 réponses

Messages postés
95
Date d'inscription
mardi 29 août 2006
Statut
Membre
Dernière intervention
10 avril 2014
38
Bonjour, essaie de dire à ton lien de s'ouvrir dans ton iframe de cette façon :

Page 1 :

<iframe name='nomFrame' width="700" src="page2.html" frameborder="0" height="140">
</iframe>


Page 2 :
<body>

<head>
<script type="text/JavaScript">
function MM_jumpMenu(targ,selObj,restore){
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
</script>
</head>
<body>
<select onchange="MM_jumpMenu('nomFrame',this,0)" style="width:65px">
<option selected="selected" value="">Autres</option>
<option value="liens1">liens1</option>
<option value="liens2">liens2</option>
<option value="liens3">liens3</option>
</select></body>
Messages postés
18453
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
26 octobre 2020
4 221
Salut.

Je pense que ceci devrait suffire :
<select onchange="document.location.href = this.value" style="width:65px">   
    <option selected="selected" value="">Autres</option>   
    <option value="liens1">liens1</option>   
    <option value="liens2">liens2</option>   
    <option value="liens3">liens3</option>   
</select>

Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
Messages postés
95
Date d'inscription
mardi 29 août 2006
Statut
Membre
Dernière intervention
10 avril 2014
38
La solution que tu viens de donner va avoir pour résultat de remplacer toute la page par le lien. D'après ce que j'ai compris, il veut que la page sélectionnée par son lien s'ouvre dans son iframe.
Messages postés
18453
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
26 octobre 2020
4 221
Faux.
L'élément document représente la page courante, celle qui exécute le JS.
Donc, en modifiant document.location.href, on modifie uniquement l'URL de la page qui exécute ce JS, donc l'URL de la page dans l'iframe.
Messages postés
1785
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
356
Ok merci beaucoup, ça fonctionne, j'ai prix note de tout ça mais j'ai décidé de supprimer les iframes car il parait que c'est pas très bien d'utiliser ça ....
Par contre si quelqu'un connais un moyen pour faire ceci : http://nsa15.casimages.com/img/2010/07/19/100719111622830232.png
En fait sur l'image, la partie div correspond à mon ancienne iframe.
Le principe et qu'on aura pas le même résultat de recherche suivant le liens sur lequel on sera.
Mais sans avoir besoin de recharger toute la page à chaque fois ...
Messages postés
18453
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
26 octobre 2020
4 221
Il faudra encore utiliser du Javascript.
Qui dit JS dit plusieurs méthodes.
Je te propose de créer un champ caché et de modifier sa valeur en fonction du lien cliqué.

Pour l'input :
<input type="hidden" name="categorie" id="categorie" value="<?php echo isset($_GET['categorie']) ? $_GET['categorie'] : 'web'; ?>" />

Les liens :
<a href="search.php?categorie=articles" onclick="setCategorie('articles'); return false;">Articles</a>

<a href="search.php?categorie=images" onclick="setCategorie('images'); return false;">Images</a>


La fonction setCategorie :
function setCategorie(catName) {
    document.getElementById('categorie').value = catName;
}
Il peut y avoir des erreurs de syntaxe, j'ai codé directement dans la zone de texte.
Messages postés
1785
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
356
Ok merci je vais essayer de comprendre tout ça (car là j'ai un peu du mal ><)