我在html文件中有一个dojo文本框.现在我想以字符串格式'yyyy-mm-dd'从文本框中检索日期.我该怎么做?
dojoType="dijit.form.DateTextBox"
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
假设您widget使用类似dijit.byId(...)or的东西引用了DateTextBox小部件dijit.byNode(dojo.query(...)),这将获得Javascript Date对象并根据ISO 8601标准(yyyy-mm-dd)对其进行格式化,与您恰好使用的显示或区域设置无关
dojo.require('dojo.date.stamp');
...
var dateObject = widget.get('value');
var isoFormat = dojo.date.stamp.toISOString(dateObject, {selector: 'date'});
Run Code Online (Sandbox Code Playgroud)
试试这个:HTML:
<input type="text" name="date1" id="date1" value="2005-12-30"
dojotype="dijit.form.DateTextBox" required="true" />
Run Code Online (Sandbox Code Playgroud)
要获取显示值,您可以使用日期文本框的这种方法:
// get widget:
var dtb = dijit.byId('date1');
// get value
alert(dtb.get('displayedValue'));
Run Code Online (Sandbox Code Playgroud)
注意*:
Dojo 根据用户区域设置格式化日期。
如果您可以使用与用户语言环境格式不同的格式,则需要为日期文本框指定约束属性。
<input type="text" name="date1" id="date1" value="2005-12-30"
constraints="{datePattern:'yyyy-MM-dd', strict:true}"
dojotype="dijit.form.DateTextBox" required="true" />
Run Code Online (Sandbox Code Playgroud)