2010-11-15 12 views
5

Attualmente sto costruendo un'applicazione MVC e utilizzando un JQuery UI Datepicker http://jqueryui.com/demos/datepicker/MVC - JQuery Datepicker per visualizzare gli eventi

di prenotare eventi.

Vorrei visualizzare tutti gli eventi disponibili nel Datepicker. C'è un modo per rieseguire il datepicker per rendere selezionabili solo le date degli eventi (cliccabili) o semplicemente evidenziare gli eventi. Un modo per passare le date nel datepicker? Qualche esperienza in merito?

Grazie in anticipo

risposta

2

Si potrebbe voler vedere l'evento beforeShowDay del controllo DatePicker http://jqueryui.com/demos/datepicker/#event-beforeShowDay. Sembra pronto per quello che stai cercando di fare, devi solo fornire una lista di date e gli stili da seguire: qualcosa come:

$('.selector').datepicker({ 
    beforeShowDay: function(date) { 
     for(i = 0; i < arrayOfCalendarEventDatesYouProvide.length; i++) { 
      if(date.getMonth() == arrayOfCalendarEventDatesYouProvide[i].getMonth() 
      && date.getDay() == arrayOfCalendarEventDatesYouProvide[i].getDay() 
      && date.getYear() == arrayOfCalendarEventDatesYouProvide[i].getYear()) 

      //matched a day in the array, turn of date in calendar if you 
      //don't want it pickable 
      return [false, 'some-css-to-indicate-a-match']; 
     } 

     //if you get this far, no matches 
     return [true, '']; 
    } 
}); 
+0

Grazie per la risposta !!! – ilkin

0

Le offerte di controllo min-max data e aggiornate, ma non supporta la fornitura di date specifiche: http://jqueryui.com/demos/datepicker/#min-max

Si sarebbe probabilmente necessario modificare il controllo di voi stessi a prendere in una serie di date accettabili, che potrebbe non essere così difficile come sembra che tu possa utilizzare la funzionalità min/max come punto di partenza.

È una caratteristica piuttosto ovvia che manca dal controllo però!