让dijit DateTextBox不可手动输入

1、

dateTextBox.onInput = function(e){

return false;

};

阻止了用户输入,日期控件也可以弹出来

2、

dijit.form.TextBox.extend(
editable: true,

_setReadOnlyAttr: function(/*Boolean*/ value){
domAttr.set(this.focusNode,'readOnly',value || !this.editable);
this._set("readOnly",value);

},
_setEditableAttr: function(value){
this._set("editable",!!value);
domAttr.set(this.textbox,"readonly",(this.readOnly || !value));
}
);
declare 是创建一个新类,extend 是直接扩展基类。这样的好处是,其他基于这个类的类,也跟着可以用。比如TextBox.extend 后,那些 Date、Time、ValidationTextBox 就不用改了

3、

define([
"dojo/_base/declare",
"dijit/form/DateTextBox"
],function(declare,DateTextBox){
return declare([DateTextBox],{
startup: function(){
this.inherited(arguments);
this.textbox.readOnly=true;
},
_setReadOnlyAttr: function(value){
this.set("readOnly",value);
}
})
});

4、

require([ 'dojo/_base/lang','dijit/form/DateTextBox','dojo/ready','dojo/parser' ],function(lang,DateTextBox,ready,parser) { lang.extend(DateTextBox,{ startup: function(){ this.textbox.readOnly=true; },_setReadOnlyAttr: function(value){ this.set("readOnly",value); } }); ready(function(){ parser.parse().then(function(){ // }); }); });

相关文章

我有一个网格,可以根据更大的树结构编辑小块数据.为了更容易...
我即将开始开发一款教育性的视频游戏.我已经决定以一种我可以...
我正在使用带有Grails2.3.9的Dojo1.9.DojoNumberTextBox小部...
1.引言鉴于个人需求的转变,本系列将记录自学arcgisapiforja...
我正在阅读使用dojo’sdeclare进行类创建的语法.描述令人困惑...
我的团队由更多的java人员和JavaScript经验丰富组成.我知道这...