如何动态更改dojo DateTextBox中的约束?
我试着这样做:如何动态更改dojo DateTextBox中的约束?,date,textbox,dojo,constraints,Date,Textbox,Dojo,Constraints,我试着这样做: dojo.mixin(endDate.constraints, {min: new Date(2009,09,14)}); 但结果我得到了这个: min Wed Oct 14 2009 00:00:00 GMT+0200 (CET) ???它总是增加一个月!这是虫子吗 但我实际上想做的是这样的: dojo.mixin(endDate.constraints, {min: dijit.byId("beginDate").date}); 这导致: min undef
dojo.mixin(endDate.constraints, {min: new Date(2009,09,14)});
但结果我得到了这个:
min Wed Oct 14 2009 00:00:00 GMT+0200 (CET)
???它总是增加一个月!这是虫子吗
但我实际上想做的是这样的:
dojo.mixin(endDate.constraints, {min: dijit.byId("beginDate").date});
这导致:
min undefined
这不是一个bug-这是一个特性!这不是Dojo的一个功能,但是: 表示月份的整数值, 从1月的0开始到1月的11 十二月
为了调试该错误,只需使用FireBug查看1)dijit.byId(“beginDate”).date返回的内容-字符串或日期对象?;2)如果是字符串,则格式是否正确;能解析新日期吗?等等。这不是一个bug,这是一个特性!这不是Dojo的一个功能,但是: 表示月份的整数值, 从1月的0开始到1月的11 十二月
为了调试该错误,只需使用FireBug查看1)dijit.byId(“beginDate”).date返回的内容-字符串或日期对象?;2)如果是字符串,则格式是否正确;可以解析新日期吗?等等。Ben,至于你问题的第二部分,新日期没有日期属性。您需要的是value属性
dijit.byId("beginDate").attr("value")
它确实返回一个日期对象。Ben,至于你问题的第二部分,日期对象上没有日期属性。您需要的是value属性
dijit.byId("beginDate").attr("value")
它确实返回一个日期对象。顺便说一下,09是八进制的,尽管浏览器似乎假装它是十进制的。请确保在不带引号的数字中避免前导零。或者在运行passe int:parseInt('08',10)与parseInt('08')时传入一个基数。顺便说一下,09是八进制的,尽管浏览器似乎假装它是十进制的。在运行passe int:parseInt('08',10)vs.parseInt('08')时,请确保避免在不带引号的数字中使用前导零。或者在运行passe int:parseInt('08')时使用基数