控制dijit NumberTextBox的输入?

时间:2011-02-05 02:01:12

标签: input dojo number-formatting

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

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

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

谢谢你的时间!

1 个答案:

答案 0 :(得分:1)

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

这个测试页面提供了一些关于验证OOTB可以做些什么的想法:

http://download.dojotoolkit.org/release-1.5.0/dojo-release-1.5.0/dijit/tests/form/test_validate.html