Asp.net mvc 3 Telerik MVC日期选择器禁用周天数

Asp.net mvc 3 Telerik MVC日期选择器禁用周天数,asp.net-mvc-3,telerik,telerik-datepicker,Asp.net Mvc 3,Telerik,Telerik Datepicker,有没有办法让DatePicker允许用户只从弹出的日期中选择星期日/星期六,因为一周从星期日开始并在星期六结束 我有两个日期选择器作为一个范围(from&to),验证是允许用户只在from框中选择一个星期天,在to框中选择一个星期六 有什么想法吗?也许您可以为所有属于星期天的链接添加jquery事件处理程序(周末在td上有一个周末类),并防止默认行为,因此无论何时单击它们,都不要执行任何操作。另外,您可能需要更改工作日值的样式,这样用户就不会因为在aspx中单击并没有获得所需的efect而感到恼

有没有办法让DatePicker允许用户只从弹出的日期中选择星期日/星期六,因为一周从星期日开始并在星期六结束

我有两个日期选择器作为一个范围(from&to),验证是允许用户只在from框中选择一个星期天,在to框中选择一个星期六


有什么想法吗?

也许您可以为所有属于星期天的链接添加jquery事件处理程序(周末在td上有一个周末类),并防止默认行为,因此无论何时单击它们,都不要执行任何操作。另外,您可能需要更改工作日值的样式,这样用户就不会因为在aspx中单击并没有获得所需的efect而感到恼火。请添加以下代码

   <%@ Page Language="C#" AutoEventWireup="true" CodeFile="DefaultCS.aspx.cs" Inherits="DefaultCS" %>

 <%@ Register TagPrefix="radcln" Namespace="Telerik.WebControls" Assembly="RadCalendar.Net2" %>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>

        <script type="text/javascript">
        function OnDayRender(calendarInstance, args)
        {   
            var jsDate = new Date(args.Date[0], args.Date[1] - 1, args.Date[2]);
            if (jsDate.getDay() != 0)//(jsDate.getDay()!=6) for Saturday 
            {
                var otherMonthCssClass = "otherMonth_" + calendarInstance.Skin;    
                args.Cell.className = otherMonthCssClass; 
                args.Cell.innerHTML = "<span>" + args.Date[2] + "</span>";
                args.Cell.DayId = "";
            }  
        }
        </script>

        <radcln:RadDatePicker ID="RadDatePicker1" runat="server">
            <Calendar OnDayRender="Calendar_OnDayRender">
                <ClientEvents OnDayRender="OnDayRender" />
            </Calendar>
        </radcln:RadDatePicker>        

</div>
</form>
}

using System;
using System.Web.UI.WebControls;
using Telerik.WebControls;
using Telerik.WebControls.Base.Calendar.Enumerations;

public partial class DefaultCS : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
    {
        RadDatePicker1.Calendar.SpecialDays.Clear();
    }
}

protected void Calendar_OnDayRender(object sender, Telerik.WebControls.Base.Calendar.Events.DayRenderEventArgs e)
{
    if (e.Day.Date.DayOfWeek != DayOfWeek.Sunday) //(e.Day.Date.DayOfWeek != DayOfWeek.Saturday) for Saturday
    {
        string calendarSkin = RadDatePicker1.Calendar.Skin != "" ? RadDatePicker1.Calendar.Skin : "Default";
        string otherMonthCssClass = String.Format("otherMonth_{0}", calendarSkin);
        e.Cell.Text = "";
        e.Cell.CssClass = otherMonthCssClass; //set new CssClass for the disabled calendar day cells (e.g. look like other month days here)
        Label label = new Label();
        label.Text = e.Day.Date.Day.ToString();
        e.Cell.Controls.Add(label);
        RadCalendarDay calendarDay = new RadCalendarDay();
        calendarDay.Date = e.Day.Date;
        calendarDay.IsSelectable = false;
        calendarDay.ItemStyle.CssClass = otherMonthCssClass;
        RadDatePicker1.Calendar.SpecialDays.Add(calendarDay);
    }

}