JS - Affichage/Disparition du bouton Submit

Fermé
Guigui_Mou Messages postés 16 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 4 décembre 2013 - 14 déc. 2011 à 15:16
Kino76 Messages postés 85 Date d'inscription mardi 26 juillet 2011 Statut Membre Dernière intervention 15 décembre 2011 - 14 déc. 2011 à 17:26
Bonjour,

Je souhaiterai que le bouton Envoyer de mon formulaire soit invisible tant que certains champs n'ont pas été renseignés puis qu'il apparaisse une fois ces conditions remplies.

Voici mon code actuel avec une vérification de caractères qui me convient.. Il faut juste que je résolve cette histoire d'affichage du bouton Envoyer..
Je sais qu'il n'y a que quelques lignes à ajouter, notamment avec les événements.. Help =)

<script type="text/javascript">
function verif_champs()
{
if(document.formulaire.txtPwd.value == "")
{
alert("Veuillez entrer la structure où vous travaillez.");
document.formulaire.txtPwd.focus();
return false;
}
if(document.formulaire.txtName.value == "")
{
alert("Veuillez entrer votre nom.");
document.formulaire.txtName.focus();
return false;
}
if(document.formulaire.txtName2.value == "")
{
alert("Veuillez entrer votre prenom.");
document.formulaire.txtName2.focus();
return false;
}
if(document.formulaire.txtNum.value == "")
{
alert("Veuillez entrer un numéro sur lequel nous pouvons vous rappeler.");
document.formulaire.txtNum.focus();
return false;
}
}
</script> 

<script language='JavaScript' src='http://www.ntrsupport.com/inquiero/obj/sec/CMD5.js'></script>
<script language='JavaScript' type='text/javascript'>
function inq_HlpdskGO(frm){
  //var bAnonymous=(frm.chkAnonymous.checked)?1:0;
  //var sURL = 'http://www.ntrsupport.com/inquiero/helpdesk/portal/logonHP.asp';
  var sURL = 'http://www.ntrsupport.com/nv/inquiero/anonymous2.asp?';
  sURL += 'lang=fr';
  //sURL += '&an=';
  //sURL += bAnonymous;
  sURL += '&login=21866';
  sURL += '&ref=' + 'C-logik____: Appel commercial';
  sURL += '&ref2=Utilisateur_: ' + frm.txtPwd.value + ' - ' + frm.txtName.value + ' - ' + frm.txtName2.value + ' - ' + frm.txtNum.value;
 

  //sURL += '&r=';
  //sURL += Math.random();
  var sFeat='toolbar=0,status=0,menubar=0,scrollbars=1,resizable=1,width=790,height=650,top=0,left=0';
  var sPwd = hex_md5(frm.txtPwd.value);
  
  window.open(sURL,sPwd,sFeat);
  //window.open(sURL,sFeat);
  frm.txtName.value='';
  frm.txtPwd.value='';
  return true;
}
</script>


<br>
<h1>Demande commerciale</h1>
<p>Saisissez vos coordonnées afin d'être rappelé :</p>

<form method='post' name="formulaire" onsubmit='return verif_champs() && inq_HlpdskGO(this);'>
<br><br><table width='30%'  border='0' cellspacing='8' cellpadding='0' >

  <tr>
	<td align='right' class='style2'>Structure : </td>
	<td align='left'><input name='txtPwd' type='text' class='style1' onchange="javascript:this.value=this.value.toUpperCase();"></td>
  </tr>
  <tr>
   <td width='30%' align='right' class='style2'>Nom : </td>
   <td width='70%' align='left'><input name='txtName' type='text' class='style1' onchange="javascript:this.value=this.value.toUpperCase();"></td>
 </tr>
  <tr>
   <td width='30%' align='right' class='style2'>Prénom : </td>
   <td width='70%' align='left'><input name='txtName2' type='text' class='style1' onchange="javascript:this.value=this.value.toUpperCase();"></td>
 </tr>
  <tr>
	<td align='right' class='style2'>Numéro : </td>
	<td align='left'><input name='txtNum' type='text' class='style1' onkeyup="check();"></td>
 </tr>
  <tr>
	<td>&nbsp;</td>
	<td align='left'><input name='btnSubmit' type='submit' class='style3' value='Envoyer'></td>
  </tr>
</table>
</form>

4 réponses

dans ta fonction Verif_Champ Si un champ est faux inclue ce code.

Document.GetElementByName("btnSubmit").style.visibility='hidden';
0
Guigui_Mou Messages postés 16 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 4 décembre 2013
14 déc. 2011 à 16:55
Quand j' implémente ta ligne de code, ça ne fonctionne pas, le message d'erreur s'affiche mais tous les champs sont effacés et le bouton Envoyer est toujours là :x

if(document.formulaire.txtPwd.value == "")
{
alert("Veuillez entrer la structure où vous travaillez.");
document.formulaire.txtPwd.focus();
Document.GetElementByName("btnSubmit").style.visibility='hidden';
return false;
}
0
Guigui_Mou Messages postés 16 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 4 décembre 2013
14 déc. 2011 à 16:51
En implémentant ta ligne de code, ça ne fonctionne pas, le message d'erreur s'affiche mais tous les champs sont effacés et le bouton Envoyer est toujours là :x

if(document.formulaire.txtPwd.value == "")
{
alert("Veuillez entrer la structure où vous travaillez.");
document.formulaire.txtPwd.focus();
Document.GetElementByName("btnSubmit").style.visibility='hidden';
return false;
}
0
Kino76 Messages postés 85 Date d'inscription mardi 26 juillet 2011 Statut Membre Dernière intervention 15 décembre 2011 3
14 déc. 2011 à 16:55
met un Id sur ton submit genre id="btSub"

document.getElementById("btSub").style.visibility='hidden';

ou

document.formulaire.getElementById("btSub").style.visibility='hidden';
0
Guigui_Mou Messages postés 16 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 4 décembre 2013
14 déc. 2011 à 17:04
ça n'efface plus les champs, le bouton Envoyer disparaît bien, mais ne réapparait jamais. Je suis une quenelle en Javascript.. merci encore de me filer un coup de main Kino76
0
Guigui_Mou Messages postés 16 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 4 décembre 2013
14 déc. 2011 à 17:05
Il faudrait qu'une fois les champs remplit il apparaisse :x
0
Kino76 Messages postés 85 Date d'inscription mardi 26 juillet 2011 Statut Membre Dernière intervention 15 décembre 2011 3
Modifié par Kino76 le 14/12/2011 à 17:28
sur tes champs ecrit onBlur="lenomdetafonction()"

et dans le script

function lenomdetafonction() 
{ 
    if((document.formulaire.txtPwd.value != "") &&        (document.formulaire.txtName.value != "") && (document.formulaire.txtName2.value != "") && 
(document.formulaire.txtNum.value != "")) 
{ 
document.getElementById("btSub").style.visibility='visible';  
} 


0