我有一个dojo DateTextBox,如下所示:
<input
dojoType="dijit.form.DateTextBox"
dojoAttachPoint="axisStart"
dojoAttachEvent="onChange:_onChange"
data-dojo-props="constraints:{min: new Date(1990,01,01)}"
tabIndex="2" />
如果我在1990年之前使用日期选择器返回,我就无法将它们罢工。预期
但是,如果我在1990年之前手动输入日期,然后离开输入字段,onChange事件仍然会触发。我不想要它。
道场警报会显示&#34;此值超出范围&#34;正确。
有没有办法只有在满足约束条件时才能触发onChange事件?或者是否有一个我可以在_onChange函数中查找的属性,以便不运行代码?
提前致谢。
答案 0 :(得分:0)
我认为你从错误的角度处理这个问题,它应该改变,因为dijit的价值确实发生了变化。
您可以通过调用dijit的_isValid()函数来检查窗口小部件是否有效。可能是你需要做如下事情:
dijit.on('change', function(e){
if (dijit._isValid()){
//run some code
}
});