Dan*_*lor 0 validation dojo textarea dojo-1.9
我有textarea这是必填字段.我发现帖子暗示Dojo没有对Textarea进行验证,但在Dojo 1.9中,有一个"必需"的参数.
我做了以下事情:
new Textarea({required:true, value:""}, query('[name=description]')[0])
Run Code Online (Sandbox Code Playgroud)
但效果不是我所期望的.texarea总是有红色边框,即使字段没有聚焦(例如,与ValidationTextBox相反).但是当我打电话时:
form.validate()
Run Code Online (Sandbox Code Playgroud)
即使texarea为空,验证也会通过.
是否有可能让Textare的行为与ValidationTextBox中的相同,或者就目前而言,该组件的验证尚未准备就绪,我必须编写自定义版本(如链接帖子中)或等待下一个Dojo?
我使用SimpleTextArea和ValidationTextArea的mixin完成了它:
define(["dojo/_base/declare", "dojo/_base/lang", "dijit/form/SimpleTextarea", "dijit/form/ValidationTextBox"],
function(declare, lang, SimpleTextarea, ValidationTextBox) {
return declare('dijit.form.ValidationTextArea', [SimpleTextarea, ValidationTextBox], {
constructor: function(params){
this.constraints = {};
this.baseClass += ' dijitValidationTextArea';
},
templateString: "<textarea ${!nameAttrSetting} data-dojo-attach-point='focusNode,containerNode,textbox' autocomplete='off'></textarea>"
})
})
Run Code Online (Sandbox Code Playgroud)
另请参阅我在textarea的Dojo验证中的答案
归档时间: |
|
查看次数: |
3469 次 |
最近记录: |