Insertion function dans php

t671 Messages postés 1632 Statut Membre -  
t671 Messages postés 1632 Statut Membre -
Bonjour,


J'ai créer une function javascript (et même plusieurs .....)
function ajout_input_mariag2(){  
 //lecture du choix dans la liste suite au onchange (liste atteinte par son id )  
 var choix_naissance=document.getElementById('date_mariage_2').value;  
 if(choix_naissance =='autre'){  
  //on rajoute l'input dans le div par un innerHTML    
 document.getElementById('div_input_mariag2_autre').innerHTML='<SELECT name="expression7">'+ 
  '<OPTION VALUE=""></OPTION>'+ 
  '<OPTION VALUE="Vers">Vers</OPTION>'+ 
  '<OPTION VALUE="Avant">Avant</OPTION>'+ 
  '<OPTION VALUE="Après">Après</OPTION>'+ 
  '<OPTION VALUE="Entre">Entre</OPTION>'+ 
  '</SELECT>'+ 
  ' <SELECT name="jour7">'+ 
  '<OPTION VALUE=""></OPTION>'+ 
  '<OPTION VALUE="1">1</OPTION>'+ 
  '<OPTION VALUE="2">2</OPTION>'+ 
  '<OPTION VALUE="3">3</OPTION>'+    ..................... 

En début de script, j'insère mes functions
</style> 
<SCRIPT LANGUAGE="Javascript" SRC="date_nais.js"> 
<SCRIPT LANGUAGE="Javascript" SRC="date_dc.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag1.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag2.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag3.js"></script> 
</script>

Comment éxécuter la function en cours de programmes ?
J'ai essayé
if (empty($row['date_mariage_2'])) 
{ 
echo '<div id="div_input_mariag2_autre"></div>'; // appel de la div de vla function 
} 
else { echo '<select name="date_mariage_2" id="date_mariage_2" onchange="ajout_input_mariag2();">';  
echo '<option value="'.$row['date_mariage_2'].'">'.$row['date_mariage_2'].'</option>'; 
echo '<option VALUE=""></option>';  
echo '<option style="color:red;" value="autre">Saisie d\'une autre date</option>'; 
echo '</select>';  
echo '<div id="div_input_mariag2_autre"></div>'; } 

mais ça ne fonctionne pas, rien ne s'affiche !
Merci.
A voir également:

6 réponses

t671 Messages postés 1632 Statut Membre 11
 
Personne ne peut m'aider ????
0
Alain_42 Messages postés 5413 Statut Membre 894
 
a cette ligne il te manque la balise de fermeture </script>

<SCRIPT LANGUAGE="Javascript" SRC="date_nais.js" ></script>
0
Atropa Messages postés 2051 Statut Membre 274
 
bonsoir,

déjà même si ca n'a rien a voir mes tes balises et attribut en minuscule c'est plus lisible

ensuite met plusieurs fonctions par fichier sinon t'as pas fini avec les balises script
et il faut se dire que c'est une requête envoyé au serveur a chaque fichier

maintenant pour ton problème.

crée un seul fichier javascript par exemple script.js

met y toutes tes fonctions

ensuite une seule balise script sous cette forme

<script type="text/javascript" src="script.js"></script>
0
t671 Messages postés 1632 Statut Membre 11
 
Merci pour vos réponse. Mais ça ne fonctionne toujours pas.
Le javascript devrait afficher des zones de saisies, mais rien ne s'affiche !
Voici ce que j'écris :
Dans mon js :
function ajout_inputdc(){  
 var choix_dc=document.getElementById('date_dc').value;  
 if(choix_dc =='autre'){  
 document.getElementById('div_inputdc_autre').innerHTML='<SELECT name="expression3">'+ 
  '<OPTION VALUE=""></OPTION>'+ 
  '<OPTION VALUE.....................
  '</SELECT>'+
document.getElementById('date_dc_autre').focus(); 
 }else{ 
  document.getElementById('div_inputdc_autre').innerHTML=''; 
} 
}

Mon code :
........... 
</style> 
<script type="text/javascript" src="script.js"></script> 
</head> 
<body> 
............... 
<?php......... 
if (!empty($row['date_dc'])) 
{ 
echo '<select ................. 
echo '<option.................. 
echo '</option>'; 
echo '</select>';  
echo '<div id="div_inputdc_autre"></div>'; //div du javascript  
} 
else 
{ 
echo '<div id="div_inputdc_autre"></div>';  
} 
0

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

Posez votre question
Atropa Messages postés 2051 Statut Membre 274
 
est ce que tu appel ta fonction javascript ? avec par exemple onchange="ajout_inputdc();" dans ta balise select ?
0
t671 Messages postés 1632 Statut Membre 11
 
Dans mon exemple ci-dessus, la première partie du "if" fonctionne :
if (!empty($row['date_dc']))
	{
	echo '<select name="date_dc" id="date_dc" onchange="ajout_inputdc();">';  
	echo '<option value="'.$row['date_dc'].'">'.$row['date_dc'].'</option>'; 
	echo '<option VALUE=""></option>';
	echo '<option style="color:red;" value="autre">Saisie d\'une autre date</option>';
	echo '</select>'; 
	echo '<div id="div_inputdc_autre"></div>'; 
	}

Enfin, cela fonctionnait quand j'ouvrais chaque javascript un par un en début de code. C'est à dire si j'écris
</style> 
<SCRIPT LANGUAGE="Javascript" SRC="date_nais.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_dc.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag1.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag2.js"></script> 
<SCRIPT LANGUAGE="Javascript" SRC="date_mariag3.js"></script> 
</script>

Cela fonctionne.
Si j'écris
<script type="text/javascript" src="script.js"></script>
qui regroupe tous les javascript ci-dessus, le
echo '<option style="color:red;" value="autre">Saisie d\'une autre date</option>';
	echo '</select>'; 
	echo '<div id="div_inputdc_autre"></div>';

ne fonctionne plus.

Et surtout, en ce qui concerne la partie "else"
else 
{ 
echo '<div id="div_inputdc_autre"></div>';  
} 

ça ne fonctionne pas du tout dans les deux cas .................... !
0