Pb java

Résolu/Fermé
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 - 29 juin 2011 à 14:28
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 - 29 juin 2011 à 17:31
Bonjour, j'ai cette ligne de code :
document.f1.txt_options1.disabled = status;

mais j'aimerais que 'txt_options1' soit une variable qui prendrais le nom de mes différents elements

est ce possible???





A voir également:

3 réponses

Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
29 juin 2011 à 15:05
oui, voici un exemple
for (j=0;j<ind;j++){
var elem=document.getElementById("txt_options"+(j+1));
elem.disabled=status;}
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
Modifié par DarkAurora le 29/06/2011 à 15:28
tout d'abord merci de ta réponse j'ai essayer de faire ce que je voulais faire avec getelementbyid et getelementbyname mais ça marche pas voila la partie de mon code que je souhaite develloper comme ennoncer dans la problematique:

<html>   
<head>   
<title>Recherche</title>   
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">  
<script language="JavaScript">  
<!--  
function enable_text(status,name)  
{  
status=!status;  
subname="txt_".concat(name);  
document.f1.txt_options1.disabled = status;  
alert(name);  
alert(subname);  
}  
  //-->  
  </script>    
 </head>  
 <form method="POST" action="search.php" name="f1">  
 <LINK rel="stylesheet" type="text/css" href="style.css">  
<body  onload="enable_text(false);">  
 <div id="bandeau">  
  TITRE  
 </div>  

<?php  
 $db = mysql_connect('127.0.0.1', 'guigui', 'test')  or die('Erreur de connexion '.mysql_error());  
 // sélection de la base  
    
    mysql_select_db('bon intervention',$db)  or die('Erreur de selection '.mysql_error());  
?>  
 <div id="contenu">  
   <form method="POST">  
   <div id="selection">  
   <table>  
   <tr>  
    <td width="200px"> Date d Entrée   </td>  
    <td width="200px"> ID du Bon de commande   </td>  
    <td width="200px"> Client   </td>  
    <td width="200px"> Date de Sortie   </td>  
   </tr><tr>  
    <td width="200px" ><input type="checkbox" name="options1" onclick="enable_text(this.checked,this.name)"></td>  
    <td width="200px"><input type="checkbox" name="options2" onclick="enable_text(this.checked)"></td>  
    <td width="200px"><input type="checkbox" name="options3" onclick="enable_text(this.checked)"></td>  
    <td width="200px"><input type="checkbox" name="options4" onclick="enable_text(this.checked)"></td>  
   </tr><tr>      
    <td width="200px"><input type="text" name="txt_options1"></td>  
    <td width="200px"><input type="text" name="txt2"></td>  
    <td width="200px"><input type="text" name="txt3"></td>  
    <td width="200px"><input type="text" name="txt4"></td>  
    <td width="200px"><input type="submit" value="rechercher" name="rechercher"></td>  
   </tr>  
   </table>  
      
   </div>  
   </form>  
 </div>

en fait je recupére le nom de ma checkbox associé à mon text et je concatène text_ avec le nom de ma checkbox ce qui me donne le nom de la zone de text associé

je me demander si il n'existait pas une technique pour faire :

document.f1.$VarNameText.disabled = status; ?? car vois tu je ne souhaite entrez du texte dans mon formulaire que si j'ai cocher la case correspondante au préalable et non pas les rendre disponible toutes en même temps

Merci d'avance
je préfère fermer ma gueule et passer pour un con
que l'ouvrir et ne laisser aucun doute à ce sujet
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 29/06/2011 à 15:45
tu as l air de melanger le php a java ???
document.f1.$VarNameText.disabled = status
si c est en php que tu veux gerer le mane ...
document.f1.<?php echo $VarNameText;?>.disabled = status
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
29 juin 2011 à 16:02
dsl de t'avoir induit en erreur le $ est juste la pour marquer la variable. en fait mon problème est que le java je le fait à l'arrache je le comprend plutôt bien mais je n'ai pas les notions de prog basic alors j'essaye de faire la comparaison avec d'autre langage que je connais bien et je fait l'amalgame et je me plante

document.f1 permet d'accéder à l'element f1 qui est mon form non??
ensuite je récupère la propriété disabled de l'élément txt_options1 qui est un textbox c'est ça ou je me plante complètement??
et c'est la propriété name de l'élément textbox que je souhaite transformer en variable
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
29 juin 2011 à 16:13
fait le en coups par coups avec des alert.
il me semble qu il n y a pas de groupe
cad:
document.f1.txt_options1.disabled n existe pas
mais
document.txt_options1.disabled lui oui
a toi de verifier suivant la structure !!! avec alert (elem.name);
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
29 juin 2011 à 16:24
document.f1.txt_options1.disabled fonctionne tester et approuver maintenant je n'ai vraiment pas assez de connaissance en javascript DOM jquery tout ce que tu veux pour faire exactement ce que je veux mais mon gros problème c'est que je suis persuadés que c'est faisables :
function enable_text(status,name) // je passe en parametre le statut de la checkbox et son nom qui est du style options1,options2,....,optionsn
{
status=!status; //change le statut true->false
subname="txt_".concat(name); // je crée une variable qui prend le nom de mon textbox qui est du style txt_options1,...txt_optionsn
document.f1.txt_options1.disabled = status; // et la je change le status si je passe le nom directement ça marche mais la je veux insérer ma variable subname pour que mon nom de textbox soit dynamique
alert(name); // test qui me dit que ça marche
alert(subname); // test qui me dit que ça marche ^^
}

j'ai essayé aussi un document.GetElementByName(subname).disabled = status mais ça a pas marché non plus
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
29 juin 2011 à 16:35
fi c est le formulaire houps pardon!
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
Modifié par DarkAurora le 29/06/2011 à 17:32
en fait c bon ça me souler de pas trouver donc je l'ai fait à la barbare et ça fonctionne :
function enable_text(status,name) 
   { 
    subname="txt_".concat(name); 
    if(subname=="txt_options1") 
    { 
     status=!status; 
     document.f1.txt_options1.disabled = status; 
    } 
    if(subname=="txt_options2") 
    { 
     status=!status; 
     document.f1.txt_options2.disabled = status; 
    }  
    if(subname=="txt_options3") 
    { 
     status=!status; 
     document.f1.txt_options3.disabled = status; 
    } 
    if(subname=="txt_options4") 
    { 
     status=!status; 
     document.f1.txt_options4.disabled = status; 
    } 
    if(subname=="txt_") 
    { 
     status=!status; 
     document.f1.txt_options1.disabled = status; 
     document.f1.txt_options2.disabled = status; 
     document.f1.txt_options3.disabled = status; 
     document.f1.txt_options4.disabled = status; 
    } 
   }

le dernier if me permet l'initialisation au premier chargement de la page il permet de rendre toutes les textbox disabled

merci encore pour ton aide
je préfère fermer ma gueule et passer pour un con
que l'ouvrir et ne laisser aucun doute à ce sujet
0