digit.DateTextBox with dojox.widget.Calendar - initialisation

http://stackoverflow.com/questions/17676555/digit-datetextbox-with-dojox-widget-calendar-initialisation

HTML

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.8.1/dijit/themes/claro/claro.css">
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.8.1/dojox/widget/Calendar/Calendar.css">
<div id="dtText"></div>

JavaScript

require([
    'dojo/dom',
    'dojo/aspect',
    'dijit/form/DateTextBox',
    'dojox/widget/Calendar'
], function(dom, aspect, DateTextBox, Calendar){
    
    var dt = new DateTextBox({
        popupClass: Calendar
    }, dom.byId('dtText'));
    
    aspect.after(dt, 'openDropDown', function() {
        
        // only default if there is no value
        if(dt.get('value') == null) {
        
            // Do not set the text box when changing value,
            // so temporarily override the onchange function
            var oldOnChange = dt.dropDown.onChange;
            dt.dropDown.onChange = function(){}; 
            
            dt.dropDown.set('value', new Date(1980, 7, 4));
            
            dt.dropDown.onChange = oldOnChange;
        }
    });
    
});