Como não deixar selecionar data anterior a atual no CalendarExtender


O AJAX Control Toolkit tem um controle chamado CalendarExtender, que exibe um calendário para seleção de data ao clicar em um textbox. Muitas vezes queremos que o usuário selecione somente uma data futura.

Para fazer isso basta adicionar no header a seguinte função javascript:

function checkDate(sender,args)

{
if(sender._selectedDate < new Date()) 
{
            alert("Você não pode selecionar uma data passada!");
            sender._selectedDate = new Date();
            // seleciona a data atual novamente
sender._textbox.set_Value(sender._selectedDate.format(sender._format))
}
}

E adicionar a referencia a esse função no CalendarExtender, como no exemplo abaixo:

<formid="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:CalendarExtender ID="CalendarExtender1"
runat="server" OnClientDateSelectionChanged="checkDate" TargetControlID="TextBox1" />
</div>
</form>

Comentários

Postagens mais visitadas