[Javascript]modifier la valeur d'un objet

Fermé
bacus - 24 janv. 2007 à 15:04
 Rousss - 26 mars 2008 à 17:47
bonjour,

J'ai une serie de Select dans ma page donc je veux modifier certaines propriétés notament la valeur.
Chacun de mes Select porte un nom du type Sel_X ou X est un index (j'ai donc des Sel_0, Sel_1 ...)
J'ai trouvé la commande suivant :

Sel_0.options[Sel_0.selectedIndex].value = 10;

qui me permet de changer la valeur.
Mon problème est de positionner cette ligne dans une boucle du style :

for (X=0; X<10; X++)
{

Sel_X.options[Sel_X.selectedIndex].value= 0;

}

En effet pas moyen de remplacer Sel_X par Sel_0 au premier tour pui Sel_1 au second et aussi de suite :(

J'ai toujours Sel_X qui biensur n'existe pas

merci de votrre aide
le
A voir également:

14 réponses

kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
26 janv. 2007 à 09:56
C'est con... j'ai trouvé un truc pour contourner ton problème, tellement con ^^ comment ne pas y avoir penser avant :p

Voici le truc : le principe est de connaitre le nom de base de ton élément à prendre (liste) ainsi que le nombre de ces élements pour la boucle. Tout ca en paramètre d'une fonction JS, ou dans le corps d'un autre script peut importe et tu fais ceci :
<script language="javascript">
function popo ( libelle, nb ){
   var oDiv = null;
   for (X=0; X<nb; X++) { 
      oDiv = document.getElementById(libelle+X);
      oDiv.options[oDiv.selectedIndex].value= 0; 
   } 
}
</scritp>


Et tu n'as plus qu'à appeler ta fonction depuis javascript ou php.

Bien sur, il ne faut pas oublier de mettre un identifiant pour chacune de tes listes, ayant le même "corps" mais un numéro différent :
<select id="liste1" ...>...</select>
<select id="liste2" ...>...</select>


Bon courage pour la suite.

ps : pas testé le script donc il se peut qu'il y ai des erreurs.
2
C'est bon j'ai trouver (merci Junq), mais sa ne marche pas sur internet explorer... que puis-je faire pour que la video se modifie aussi sur internet explorer

<!bouton pour lancer la fonction!>
<input type="button" value="change video" onclick="charge_vid('http://www.dailymotion.com/swf/x32mgo')">

<!la video a changer!>
<center>
<div name="vid" class="gauche">
<object width="420" height="252" name="lec">
<param id="vid1" name="movie" value="https://www.dailymotion.com/embed/video/x3hj51"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowScriptAccess" value="always"></param>
<embed id="vid" src="https://www.dailymotion.com/embed/video/x3hj51" type="application/x-shockwave-flash" width="420"

height="252" allowFullScreen="true" allowScriptAccess="always"></embed></object><br /><b></a></i></div>
</center>



<!le script!>
<script language="Javascript">
function charge_vid(i)
{
var d=document.getElementById("vid");
d.src=i;
d.style.display="none";
alert("video charger ;)");
d.style.display="";
}
</script>
1
personne ne sais ?
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
25 janv. 2007 à 12:23
Le sujet a déjà été traité sur ce forum mais je n'arrive pas a remettre la main sur la discution en question et je ne me souviens plus non plus de la solution (toute simple pourtant :s)

A suivre...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Erf j'ai pas bolle .. tu te souviens pas :/

Je cherche depuis plusieur jour sans succé.
Ca doit tenir a pas grand chose dans la facon d'ecrire le code mais comment ??
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
25 janv. 2007 à 15:55
Arf non désolé je vois bien en PHP comment faire en fait, mais pas en javascript.

Peut-être quelqun de plus compétent en javascript... :)
0
J'ai fait le tour de tous les poste que j'ai trouve sur le forum et rien :(
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
26 janv. 2007 à 10:05
Tu peux aussi faire :
for (X=0; X<10; X++)
{
  eval("Sel_"+X+".options[Sel_"+X+".selectedIndex].value= 0;");
}
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
26 janv. 2007 à 10:24
Voilà la fameuse réponse, merci Xavier :)
0
Desole je suis nouveau dans la programmation, sur mon site, j'affiche des video daily motion du type:

<div><object width="420" height="336"><param name="movie" value="http://www.dailymotion.com/swf/x3u7kk&v3=1&related=1"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="http://www.dailymotion.com/swf/x3u7kk&v3=1&related=1" type="application/x-shockwave-flash" width="420" height="336" allowFullScreen="true" allowScriptAccess="always"></embed></object><br /><b><a href="http://www.dailymotion.com/video/x3u7kk_mfda-4x05-la-phalange-du-singe-part_fun">MFDA 4x05 La Phalange Du Singe (part1)</a></b><br /><i>envoyé par <a href="http://www.dailymotion.com/Kinay90">Kinay90</a></i></div>

j'aurais aimer changer la video (pour eviter de trop en afficher), a l'aide de java, je pense que cet exemple peut m'aider, mais je n'arrive pas a l'appliquer:

<script language="Javascript">
function code()
{
var oDiv = null;
oDiv = document.getElementById("movie");
oDiv.value="http://www.dailymotion.com/swf/x3wj9l";
}
</script>


<input type="button" value="Liste" onclick="javascript:code()">

J'ai esssayer d'autre code, mais...sans succes
0
j'ai essayer une autre version :P

mon script


<script language="Javascript">
function code()
{
alert("ok");

var d=null; //devrais-je le declarer autrement???
d=document.vid.lec.movie; //je sais pas si sa fonctionne sa :P
d.value="https://www.dailymotion.com/embed/video/x2z9j3"; //la nouvelle valeur, la nouvelle video donc
alert("fait");
}
</script>

<input type="button" value="Liste" onclick="Javascript:code()"> //appel de ma fonction

<center> //la video de base
<div name="vid"><object width="420" height="252" name="lec"><param name="movie"

value="https://www.dailymotion.com/embed/video/x3hj51"></param><param name="allowFullScreen" value="true"></param><param

name="allowScriptAccess" value="always"></param><embed src="https://www.dailymotion.com/embed/video/x3hj51"

type="application/x-shockwave-flash" width="420" height="252" allowFullScreen="true"

allowScriptAccess="always"></embed></object><br /><b>>ubi</a></i></div>
</center>
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
12 févr. 2008 à 14:29
Bonjour,

Je ne sais pas ce qu'il en est pour IE7, mais IE6 ne gérait pas bien la distinction entre Name et Id d'un élément...
Donc je te propose de supprimer le name="vid" qui est sur ton <div>.

Pas sûr que ça change quoi que ce soit, mais c'est une possibilité...

Xavier
0
Utilisateur anonyme
12 févr. 2008 à 14:39
Bonjour,
merci d'aller voir sur cette convers. et de m'aider si possible
bonne journée
0
malheureusement, sa n'a rien changer....mais merci :)

J'ai trouver encore une nouvelle chose, utiliser un fichier source java,
mais il semble que sa ne serve qu'au chargement de la page...

Une foi la page charger, ie pose probleme avec le flash si j'ai bien compris,
donc, pour modif c'est ... peu etre impossible :'(, mais rien est impossible :P

Aider moi plz :D
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
13 févr. 2008 à 10:27
Attention, tu parles de Java depuis le début, mais cela n'a à peu près rien à voir : toi tu fais du JavaScript, c'est différent !
0
Oui j'ai abrevier desoler, mais bon c'est bien le sujet du topic :D
apparemment personne ne sait...
0