我想更改dijit dateTextBox日期的显示格式.
目前我的日期显示如下
我的声明是这样的
<input type="text" data-dojo-type="dijit/form/DateTextBox" data-dojo-attach-point="theInput" />
但我想将格式更改为我想要的任何格式,例如2017年9月14日或2017年9月14日.
另外,如果使用键盘输入格式,是否可以针对相同格式进行验证-即当用户键入数据时,该格式必须为该格式,否则将显示无效消息.
编辑:
我所能找到的只是提到了约束,该约束使您可以设置输入约束和格式设置-但是文档中没有使用该约束的示例.看到说明性和程序性示例都很好.
data-dojo-props="constraints:{datePattern:'yyyy-MM'}"
但是我想以编程方式执行此操作,但是当我检查输入对象时
this.theInput.constraints
没有诸如datePattern或min和max的属性.
解决方法:
>作为示例:
只需将您的模式,min,max放在约束道具中,例如:
<input type="text" name="shortYear" data-dojo-type="dijit/form/DateTextBox" data-dojo-props="constraints:{datePattern: 'MM-dd-yyyy',min:'2016-12', max:'2018-06'}" value="09-14-2017" required="true" />
查看工作提琴
require(["dijit/form/DateTextBox","dojo/parser", "dijit/form/Button","dojo/on" ,
"dojo/domready!"
], function(DateTextBox,parser,Button, On ) {
parser.parse();
});
<link href="https://ajax.googleapis.com/ajax/libs/dojo/1.10.0/dijit/themes/claro/claro.css" rel="stylesheet"/>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script>
<body class="claro">
<input type="text" name="shortYear" data-dojo-type="dijit/form/DateTextBox" data-dojo-props="constraints:{datePattern: 'MM-dd-yyyy',min:'2017-09-03', max:'2018-01-01'}" value="09-14-2017" required="true" />
</body>
或这个FIddle
>对于程序示例:
您只需要用来直接访问约束对象并在那里设置约束值Mydateinput.constraints.contName = value like
myDateBox.constraints.datePattern = 'MM-dd-yyyy'
myDateBox.constraints.min = new Date();
myDateBox.constraints.max = new Date("yyyy-MM-dd")
查看工作片段
require(["dijit/form/DateTextBox", "dijit/form/Button","dojo/on" ,
"dojo/domready!"
], function(DateTextBox,Button, On ) {
dateBox = new DateTextBox({
}, "date");
dateBox.constraints.datePattern = 'MM-dd-yyyy';
dateBox.constraints.min = new Date("2017/09/03");
dateBox.constraints.max = new Date("2018/01/01")
dateBox.startup();
});
<link href="https://ajax.googleapis.com/ajax/libs/dojo/1.10.0/dijit/themes/claro/claro.css" rel="stylesheet"/>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script>
<body class="claro">
<div id="date" ></div>
</body>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。