11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

cela fait plusieur que j'essai de faire fonctionner l'option beforeShowDay de datepicker mais je bloque.


	  function check(date){
		ok = $.datepicker.formatDate('yy-mm-dd', new Date(date));
		//return [true, "ui-event"];
		var xxx=$.ajax({
   type: "POST",
   dataType: "json",
   url: "ajax/ajax_date.php",
   data: "idauteur="+ok,
	success: function(json){ 


	var a = eval(json.nb); 
			if(a==1) 	
	{
	return [true, "ui-event"];
	} 	
	
	}	})
	return xxx;
	
          }
$(document).ready(function() {	  
$("#date").datepicker({
		monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
		monthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun','Jul','Aoû','Sep','Oct','Nov','Déc'],
		dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
		dayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
		dayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],
		dateFormat: 'dd-mm-yy', firstDay: 0, 
		isRTL: false,
		beforeShowDay: check,
		onSelect:function(dateText,inst){/*code à executer*/}	
});
})

page php:

<?php
header('Content-Type: text/x-json; charset: UTF-8');
if(isset($_POST["idauteur"])){
include ("../../fonction/fonction.bdd.php"); 
connexion_mysql();
include ("../../fonction/fonction.site.php"); 
		$date= $_POST["idauteur"];
	
		
		////////////////////////////////////////////////////////////
$sql="select count(*) FROM commande_cap WHERE date_cc='".valid_data($date)."';";
$query=mysql_query($sql);
$nb=mysql_result($query,0);
$retour_json.='{"nb" : "'.$nb.'"} ';

echo $retour_json;
 }
?>


Explication:

- beforeShowDay regarder si la date selectionner contient ou information, si oui elle change la numéro de couleur.

Pour ma part je demande d'interroger en ajax (json) ma base de donnée il me retourne une valeur (0 ou1) et dans mon script je lui demande si c'est 1 il retourne true+css.

Mais cela ne fonctionne pas et je ne voit pas pourquoi.
==> Les données retourne de ma page php sont bien en json.
==> le renvoie d'information (1 ou 0) se fait correctement (test alert()).

Je ne voit pas ce qu'il me manque

Si quelqu'un aurait une idée ou bien l'erreur .

Merci

guigui69
Modifié par guigui69 (20 Apr 2010 - 16:54)
Bonjour à tous,

je cherche vraiment de l'aide car la je bloque:

	  function check(date){
		ok = $.datepicker.formatDate('yy-mm-dd', new Date(date));
		var ccc = false ;

	return $.ajax({
   type: "POST",
   dataType: "json",
   url: "ajax/ajax_date.php",
   data: "idauteur="+ok,
	success: function(json){ 
	var a = json.nb; 
			if(a==1) 	
	{
	//alert(a);
	var ccc = true ;
	//alert(ccc);
	} 	

	}	
	
	});
	
	 if (ccc)  return [true, "ui-event","tooltip"] ;
    else return [false, 'class_css_jour_libre'] ;


          }


C'est dans cette partie du code que ca bug, le but c'est qu'il me retourne "return[flase ou true, css, etc] .
Je n'arrive pas à lui faire retourner ceci.
La j'ai essai mais je comprend pas pourquoi cela ne fonctionne pas

guigui69