我正在尝试为电子邮件地址创建自定义 ValidationTextBox 小部件。我们的系统中有许多区域使用电子邮件地址输入,我想创建一个具有默认正则表达式、无效消息等的小部件。问题是有两个属性:占位符和 maxlength 似乎没有得到添加到我的扩展课程中。我的代码如下:
define([
"dojo/_base/declare", // declare
"dijit/form/ValidationTextBox",
"dojo/_base/lang"
],
function(declare, ValidationTextBox, lang){
return lang.mixin(ValidationTextBox, {
invalidMessage: "Please enter a valid email address.",
missingMessage: "Please enter a valid email address.",
regExp : "[a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$",
maxlength : 50,
placeholder : 'Your Email'
});
});
如果我在我的页面上使用它,无效消息可以正常工作,但是在我使用它的任何地方,我都看不到占位符,也没有应用 maxlength。除了 lang.mixin 方法之外,我还尝试使用此处说明的声明方法: http ://www.sitepen.com/blog/2010/07/01/creating-and-enhancing-dojo-classes/ . 我得到相同的结果。
知道我错过了什么吗?