Bonjour,

Je valide des champs au blur : s'ils sont vides, j'affiche un message. J'ai un souci sur un champ auquel est attaché un UI Datepicker. Lorsque je choisis une date, mon message d'erreur s'affiche alors que le champ n'est plus vide :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
<head>
<script language="Javascript">
$(function() {
 
  $('input:text, textarea').each(function(){
 
     $('input:text, textarea').blur(function(){ 
 
          if($(this).val()!=="")
          {
          $(this).next(".erreur").hide();
          }
	  else
	  {
          $(this).next(".erreur").show().text('erreur');
	  }
 
    });
 
  });
 
	$("input").bind("focusout", function(event){//astuce Daniel Hagnoul
	    if ($(".ui-datepicker").is(":visible")){
	    console.log("C'est le datepicker : " + event.target);
	    return false; // on bloque l'événement
	    }
 
          });
 
	 $( "#datepub_insert" ).datepicker({
 
		changeMonth: true,
		changeYear: true,
		maxDate: "+0D",	
		buttonImage: "styles/img/calendar.gif",
		buttonImageOnly: true ,
		showButtonPanel : true
 
 
		});
 
});
</script>
<head>
 
<body>
<input id="datepub_insert"/>
<span style="display:none; color:#F00;" class="erreur"></span> 
</body>
Malgré l'astuce de Daniel Hagnoul, je n'arrive pas éviter l'affichage du message alors que le champ n'est plus vide. Voyez-vous comment procéder ? Merci.