我一直试图从validationTextBox中显示一条无效的消息,告诉它有什么不起作用。 我复制粘贴从互联网上的例子,即使它不工作。
我正在使用dojo 1.8 下面是我的示例代码
必需属性突出显示文本框,但未显示消息 在此处输入代码 <%@ page language =“java”contentType =“text / html; charset = ISO-8859-1” 的pageEncoding = “ISO-8859-1” %> 我的测试
<link rel="stylesheet" type="text/css"
href="../MyTest2/js/dojoRoot/dijit/themes/claro/claro.css">
<script type="text/javascript">
dojo.require("dijit.form.ValidationTextBox");
dojo.require("dijit.form.Form");
</script>
</head>
<body class="claro">
<form id="addForm" dojoType="dijit.form.Form" action="save" method="post">
<table>
<tr>
<td>First Name</td>
<td><input type="text" name="firstName" id="firstName"
value="someTestString" required="true" dataType="dijit.form.ValidationTextBox" promptMessage="please enter first name" invalidMessage="first name is empty" /></td>
</tr>
</table>
</form>
由于 莎丝
答案 0 :(得分:0)
您已使用dataType属性。它是“dojoType”。 现在,“dojoType”已被替换为“data-dojo-type”。你把它误认为是dataType。 您可以使用“dojoType”或“data-dojo-type” 此外,使用missingMessage属性显示用户移出字段的消息,而不提供输入。 “required”与“missingMessage”一起使用 promptMessage用作工具提示。当用户专注于该字段时显示。 如果在将焦点移离字段时不满足任何提到的约束,则使用invalidMessage。让我举个小例子。
<html>
<head>
<style type='text/css'>
@import "./js/dijit/themes/claro/claro.css";
</style>
<script type='text/javascript' src='./js/dojo/dojo.js' djConfig="parseOnLoad:true,isDebug:false">
</script>
<script type='text/javascript'>
dojo.require("dijit.form.ValidationTextBox");
</script>
</head>
<body class="claro">
<input type="text" dojoType="dijit.form.ValidationTextBox" id="namefld" name="namefld" required="true" missingMessage="Input is required for Name!" promptMessage="Pease enter you name!" regExp="[a-zA-Z]+" invalidMessage="Wrong input! Please correct!"/>
</body>
</html>
答案 1 :(得分:0)
我使用的是Dojo的另一个版本(1.9),但如果你的问题主要是装饰性的,那么有两点需要注意:
data-dojo-props="required:true, _hasBeenBlurred:true"
,_hasBeenBlurred
会使小部件假定用户之前已经与之进行过互动。placeholder
attribute。< / LI>
醇>