javascript - 使用 dojo 验证/清除所有输入框

标签 javascript dojo

1) 我有一个 dojo 小部件,我在其中加载了另外 2 个小部件。现在在某个时候我想清除小部件中的所有文本框。一种方法是:

this.myAttachPoint.value="".

但是这样做会增加代码行数。我如何使用一些替代代码来清除所有字段?

2) 同样为了验证,我检查了每个字段。 EG

if(this.myAttachpoint.value.trim() == "" ){
 //show soime error message
}

现在我的小部件中有 50 个字段并且代码行越来越多。任何人都可以建议我一些替代方案吗?

最佳答案

将所有文本框放入 dijit.form.Form 中元素。 当您想清除所有文本框时,您可以这样做

dojo.forEach(dijit.byId('myForm').getDescendants(), function(formWidget) {
    formWidget.attr('value', null);
    //or you could just clear the displayedValue, or...
});

其中 myForm 是您的 dijit.form.Form 小部件的 ID。

这只适用于文本框,所以不要在表单中放置任何其他类型的表单小部件。

这将清除表单中的所有文本框。如果您只想清除某些元素,则必须在 forEach 循环中引入条件逻辑。

关于javascript - 使用 dojo 验证/清除所有输入框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5401082/

相关文章:

javascript - 在node.js下使用dojo 1.8 dojo/request失败并出现TypeError : Object has no method 'substring'

node.js - node.js 中是否有 dojo.hitch 等价物

javascript - Spring 是在升级他们的 JS 验证框架还是 JQuery 是更好的选择?

javascript - 如何使 animate.css(plugin) 在实时站点加载时立即工作?

javascript - 具有不同高度的响应式图片库 - 如何使用 css(或 jquery)实现这一点

javascript - Vue CLI "index.html"内容

javascript - 带下划线的排序和重组 json 对象

javascript - 无法在表单输入中获取 Typed.js 闪烁光标

javascript - 将装饰器转换为 DOJO 中的自定义小部件?

javascript - 有没有一种方法可以在不使用 Firebug 的情况下查看 Firefox 中执行的 JavaScript 的踪迹?