给Dojo中DateTextBox设置默认日期

       前几天用到dijit.form.DateTextBox (version 1.6) ,用来做一个常见的日期控件,很简单的应用,但是网络上关于Dojo的资料并不多,有Dojo toolkit 当做API文档来检索,可是光秃秃的文字说明,不如真切的实例来的痛快。 下面和大家分享一下。

 

      1.默认初始化当前日期:

 var date = new Date();

  var day = date.getDate().toString();

  var year = date.getFullYear().toString();

  var month = (date.getMonth()+1).toString();

  var showDate =year+"-"+month+"-"+day;

  this.startTime.editorWidget.setDisplayedValue(showDate);  
   //修改时间2012-7-23 ,直接new Date给控件的value属性,会根据当前style显示当前日期。
   new dijit.form.DateTextBox({constraints:{ }, value: new Date()});

     Ps:一开始,我对这东东不懂啊,就掰着API文档来看,来回浏览了几遍,靠着我得天独厚的职业敏感,就是它啦。得意

      其实这个控件默认会选中当前日期,可是并不会显示出来,通过使用firebug查看,发现使用"yyyy-MM-dd"格式来处理日期值,然后直接丢给DateTextBox就可以显示当前日期了,很简单的。

 

     2.获取日期控件值(所见即所得):

      一般的checkbox或者combobox控件,它们的显示机制,都是id-value形式,就和Map(键值对)一样的。我们在DateTextBox的使用过程中,通过上一步setDisplayedValue来设置默认显示日期,同时可以通过DateTextBox.displayedValue来获取当前的显示内容,并且符合我们的日期格式。

 

      后面会继续和大家分享一些Dojo的应用实例,互相进步。


2012-4-16

继续分享:日期格式化

        var startDate = this.startDate.get("value") || "";
        if(startDate!=""){
            startDate = dojo.date.locale.format( startDate, {selector:"date", datePattern:'yyyy-MM-dd' } );
        }

2012-4-28

继续分享:让日期控件只可选日期间隔内的日期值,之外的日期值不可选.

 new dijit.form.DateTextBox({
        constraints:{
        	min: 日期间隔的起始日期,
        	max: 日期间隔的结束日期
        },
        value: 默认日期
 });


查看dojo API 官方Demo : 地  址

 


你可能感兴趣的:(Date,api,网络,Firebug,文档,dojo)