我有以下代码:
< input type =“text”dojoType =“dijit.form.NumberTextBox”size = 8 约束= “{分钟:0,最大值:100000,地方:0}” id =“orgNumberOfStudents”name =“orgNumberOfStudents” required =“true”invalidMessage =“0到100,000之间的整数” 值= “” >
问题:
1)如何设置盒子的宽度?我必须在样式标签或CSS中执行此操作吗?传统的“输入大小”标签是否被忽略?
2)上面的示例显示了输入非数字值时的错误。但是,如果我在场上进行选项并且没有填写任何内容,那么它仍然是空白的。单击提交按钮时是否有快速实施验证的方法?我需要Dijit提交按钮吗?我是否需要编写更多JavaScript来实现这一目标? required =“true”实际上是如何发生的?
(一个好处是将值设置为0,但我宁愿强制用户输入一个值而不是默认值)。
谢谢, 尼尔沃尔特斯
答案 0 :(得分:3)
您应该能够在NumberTextBox上使用CSS和传统的INPUT属性,例如“maxLength”,方法是将它们传递给Widget的构造函数。 maxLength可用于所有dijit.form.TextBox子类,但由于您可以控制min / max和实际数字格式等内容,因此可能不太有用。
是的,在提交之前,您可以随时编写自己的JS来测试窗口小部件实例上的“isValid()”,例如:在HTML FORM onSubmit处理程序中,或者你可以使用dijit.form.Form来检查你的有效性。根据所选择的选项,小部件本身仅负责其自身有效性的可视化表示。
HTH