解决方案 »

  1.   

    内部封装了,你可以再给这个按钮 注册一个click事件,jquery 是事件列表的形式,注册几次事件就执行几次代码。
      

  2.   

    ok按钮没有点击事件,但是可以通过onSelect事件模拟出“点击了ok按钮一样的效果”,我的代码:
    关键:
    0,理解DateTimeBox控件,这个控件是由DateBox+TimeSpinner这2个控件组成的,而DateBox又继承自combo控件。
    1,使用setText方法,设置控件文本框的内容,这个方法是DateTimeBox从combo控件中继承过来的。不能使用setValue方法,因为这个方法是从DateBox继承过来的,但是DateTimeBox控件并没有重写这个方法,由于DateTimeBox还包含"时分秒",所以无法使用这个DateBox的方法。
    2,使用spinner方法,获取“时分秒”信息,这个方法返回DateTimeBox中包含的TimeSpinner控件,使用TimeSpinner控件的getValue方法可以获得时间信息
    3,使用onSelect方法,获取“日期”信息,onSelect:function(date){},其中date是事件触发时选中的日期,是js的Date类型数据
    4,使用hidePanel方法,把下拉日期面板关闭,该方法也是继承自combo控件
    容易看懂的代码:
    $('#TextStartTime').datetimebox({
       showSeconds:false,
       required:true,
       onSelect:function(date){
    var time=$('#TextStartTime').datetimebox('spinner').spinner('getValue');
    $('#TextStartTime').datetimebox('setText',date.getFullYear()+'-'+ (date.getMonth()+1) +'-'+date.getDate()+' '+ time);
    $('#TextStartTime').datetimebox('hidePanel');
       }
    });让日期2014-1-2变成2014-01-02格式的代码:
    $('#TextStartTime').datetimebox({
       showSeconds:false,
       required:true,
       onSelect:function(date){
    var time=$('#TextStartTime').datetimebox('spinner').spinner('getValue');
    $('#TextStartTime').datetimebox('setText',date.getFullYear()+'-'+ ((date.getMonth()+1)<10 ? ('0'+(date.getMonth()+1)) : (date.getMonth()+1))+'-'+((date.getDate())<10 ? ('0'+(date.getDate())) : (date.getDate()))+' '+time);
    $('#TextStartTime').datetimebox('hidePanel');
       }
    });