Insertion function dans php

t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   -  
t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   -
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.

6 réponses

  1. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
     
    Personne ne peut m'aider ????
    0
  2. Alain_42 Messages postés 5413 Statut Membre 904
     
    a cette ligne il te manque la balise de fermeture </script>

    <SCRIPT LANGUAGE="Javascript" SRC="date_nais.js" ></script>
    0
  3. 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
  4. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   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