Input 控制dijit NumberTextBox的输入?

Input 控制dijit NumberTextBox的输入?,input,dojo,number-formatting,Input,Dojo,Number Formatting,我正在使用NumberTextBox,希望以满足以下要求的方式控制输入: a) 不允许有+或-项 b) 值必须介于例如4.5和19.8之间 c) 允许的格式在“.”前面最多两位,后面最多4位。 d) 因此,控件最多应包含7个字符,并且不得允许输入更多字符 除了违反b)的错误消息之外,我不想看到任何消息。我希望不可能在“.”之前输入第三位数字或在“.”之后输入第五位数字。 我得到的最佳方法是使用 -maxLength=“7” -约束={min=“4.5”,max=“19.8”,pattern=“#

我正在使用NumberTextBox,希望以满足以下要求的方式控制输入:
a) 不允许有+或-项
b) 值必须介于例如4.5和19.8之间
c) 允许的格式在“.”前面最多两位,后面最多4位。
d) 因此,控件最多应包含7个字符,并且不得允许输入更多字符

除了违反b)的错误消息之外,我不想看到任何消息。我希望不可能在“.”之前输入第三位数字或在“.”之后输入第五位数字。
我得到的最佳方法是使用
-maxLength=“7”
-约束={min=“4.5”,max=“19.8”,pattern=“#0.####”}
但这并不能完成任务。我也尝试了不同的模式,并利用“精确性”,但仍然无法得到我想要的

有可能吗?或者我需要为此编写额外的代码吗


谢谢你的时间

我似乎记得有人曾经在IRC频道问过这个问题,答案是有一次尝试过先发制人地完全阻止无效输入,但结果太麻烦而无法完成。因此,这些小部件中的OOTB验证纯粹是反应性的,而不是预防性的

此测试页面提供了一些有关您可以使用验证OOTB执行的操作的想法: