关闭

NetAdvantage asp.net ——使用WebDateChooser在客户端验证开始日期与结束日期

标签: asp.netjavascriptstring服务器脚本
499人阅读 评论(0) 收藏 举报
对于日期选择,我们经常使用 WebDateChooser控件,当涉及到开始日期与结束日期的时候,就需要验证日期的合法性,这种情况在开发过程中经常遇到,所以我们可以编写一个通用的方法在客户端就验证日期的合法性,而不必等到提交到服务器才进行验证,方法如下:
public void BindCompareDateChoosers(Control userControl,Infragistics.WebUI.WebSchedule.WebDateChooser beginDateChooser, Infragistics.WebUI.WebSchedule.WebDateChooser endDateChooser)
        
{
           
            
string compareJS = "<script language=javascript>" +
               
"function CompareDate(oCalendar, newValue, oEvent) " +
               
"{" +
               
"  var dateChooserBegin = igdrp_getComboById('" + beginDateChooser.ClientID + "'); " +
               
"  var dateChooserEnd = igdrp_getComboById('" + endDateChooser.ClientID + "'); " +
               
"  if(oCalendar==dateChooserBegin.Calendar)" + 
               
"  {" +
               
"     var dateBegin=newValue;" +
               
"     var dateEnd = dateChooserEnd.getValue();" +
               
"     var dateEndText = dateChooserEnd.getText();" +
               
"     if(dateEndText!='---请选择---' && dateEndText!='' && dateBegin>dateEnd)" +
               
"     {" +
               
"        alert('选择日期区间时,起始日期不能晚于截止日期!'); " +
               
"        oEvent.cancel = true;" +
               
"     }" +
               
"  }" +
               
"  if(oCalendar==dateChooserEnd.Calendar)" +
               
"  {" +
               
"     var dateBegin=dateChooserBegin.getValue();" +
               
"     var dateEnd = newValue;" +
               
"     var dateBeginText = dateChooserBegin.getText(); " +
               
"     if(dateBeginText!='---请选择---' && dateBeginText!='' && dateBegin>dateEnd)" +
               
"     {" +
               
"        alert('选择日期区间时,起始日期不能晚于截止日期!'); " +
               
"        oEvent.cancel = true;" +
               
"     }" +
               
"  }" +
               
"}" +
               
"</script>";
            userControl.Page.ClientScript.RegisterStartupScript(userControl.GetType(), 
"CompareDate", compareJS);
            beginDateChooser.ClientSideEvents.CalendarValueChanging 
= "CompareDate";
            endDateChooser.ClientSideEvents.CalendarValueChanging 
= "CompareDate";

        }
我们可以在页面或者控件的Page_Load函数里直接调用BindCompareDateChoosers(this,beginDateChooser,endDateChooser)来绑定验证日期的脚本。
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:83885次
    • 积分:1350
    • 等级:
    • 排名:千里之外
    • 原创:30篇
    • 转载:65篇
    • 译文:0篇
    • 评论:12条
    最新评论
    学习网站