Ciao.
Sì, è sicuramente possibile ed è anche abbastanza semplice.
Il nostro amico Flash ci permette di eseguire direttamente la differenza tra i valori delle due date. Otterrai un valore in millisecondi che potrai utilizzare per calcolarti il numero di giorni nell'intervallo (o di notti se sei nottambulo).
Ad esempio, metti caso che hai due istanze di DateField sul tuo stage, che si chiamano rispettivamente da_data e a_data.
Ti basterà un semplice script del genere:
Codice PHP:
// applico il listener che mi cattura l'evento "change" per i due DateField
da_data.addEventListener("change",elabora_intervallo);
a_data.addEventListener("change",elabora_intervallo);
function elabora_intervallo():Void {
// se le date sono selezionate entrambe
if (da_data.selectedDate && a_data.selectedDate) {
// recupero i valori delle due date
var data_inizio:Number = da_data.selectedDate;
var data_fine:Number = a_data.selectedDate;
// calcolo i giorni nell'intervallo
var intervallo_giorni:Number = Math.abs(data_fine-data_inizio)/86400000;
// NOTA:
// eseguendo la differenza delle due date si ottiene un numero in millisecondi
// quindi, per ottenere il valore in giorni, va diviso per 86400000
// (che sono esattamente i millisecondi presenti in 24 ore)
trace(intervallo_giorni);
}
}
intervallo_giorni ti restituirà il valore in giorni.
Tieni presente che non ho inserito alcun controllo per la corretta selezione delle date, per cui sarebbe possibile ottenere un valore negativo se la data di inizio fosse "maggiore" di quella finale. Per questo motivo ho utilizzato la funzione Math.abs con cui si ottiene un valore assoluto.
86400000 non è un numero preso a caso ma semplicemente, per ottenerlo, ho moltiplicato 1000 ms x 3600 s x 24 h, cioè i millisecondi presenti in un giorno.