Les Allergies
Alimentaires
Posez votre question Signaler

[Javascript]modifier la valeur d'un objet

bacus - Dernière réponse le 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
Lire la suite 

[Javascript]modifier la valeur d'un objet »

16 réponses
Réponse
+2
moins plus
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.
Ajouter un commentaire
Réponse
+1
moins plus
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="http://www.dailymotion.com/swf/x3hj51"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowScriptAccess" value="always"></param>
<embed id="vid" src="http://www.dailymotion.com/swf/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>
Ajouter un commentaire
Réponse
+0
moins plus
personne ne sais ?
Ajouter un commentaire
Réponse
+0
moins plus
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...
Ajouter un commentaire
Réponse
+0
moins plus
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 ??
Ajouter un commentaire
Réponse
+0
moins plus
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... :)
Ajouter un commentaire
Réponse
+0
moins plus
J'ai fait le tour de tous les poste que j'ai trouve sur le forum et rien :(
Ajouter un commentaire
Réponse
+0
moins plus
Tu peux aussi faire :
for (X=0; X<10; X++)
{
  eval("Sel_"+X+".options[Sel_"+X+".selectedIndex].value= 0;");
}
kij_82- 26 janv. 2007 à 10:24
Voilà la fameuse réponse, merci Xavier :)
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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="http://www.dailymotion.com/swf/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="http://www.dailymotion.com/swf/x3hj51"></param><param name="allowFullScreen" value="true"></param><param

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

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

allowScriptAccess="always"></embed></object><br /><b>>ubi</a></i></div>
</center>
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
merci d'aller voir sur cette convers. et de m'aider si possible
bonne journée
Ajouter un commentaire
Réponse
+0
moins plus
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
Reivax962- 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 !
Ajouter un commentaire
Réponse
+0
moins plus
Oui j'ai abrevier desoler, mais bon c'est bien le sujet du topic :D
apparemment personne ne sait...
Ajouter un commentaire
Ce document intitulé « [Javascript]modifier la valeur d'un objet » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?