Javascript Dojo电子邮件和url验证未启动
我实现了DOJO框架,但是我在让内置验证对电子邮件和URL起作用时遇到了问题。似乎在我的代码和目录结构的屏幕截图下没有触发函数: Page.jspJavascript Dojo电子邮件和url验证未启动,javascript,jsp,dojo,Javascript,Jsp,Dojo,我实现了DOJO框架,但是我在让内置验证对电子邮件和URL起作用时遇到了问题。似乎在我的代码和目录结构的屏幕截图下没有触发函数: Page.jsp <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@taglib prefix="s" uri="/struts-tags"%> <%@ taglib prefix=
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="dojo/dojo/dojo.js" data-dojo-config="async:true"></script>
<script>
//load requirements for declarative widgets
require(["dojo/parser",
/* dojox/ validate resources */
"dojox/validate/us", "dojox/validate/web",
/* basic dijit classes */
"dijit/form/CheckBox", "dijit/form/Textarea", "dijit/form/FilteringSelect", "dijit/form/TextBox", "dijit/form/ValidationTextBox", "dijit/form/DateTextBox", "dijit/form/TimeTextBox", "dijit/form/Button", "dijit/form/RadioButton", "dijit/form/Form", "dijit/form/DateTextBox",
/* basic dojox classes */
"dojox/form/BusyButton", "dojox/form/CheckedMultiSelect",
"dojo/domReady!"]);
</script>
<link href= "<c:url value="dojo/dijit/themes/claro/claro.css" />" rel="stylesheet" type="text/css" media="screen"/>
<title>Insert title here</title>
</head>
<body class="class">
<form data-dojo-type="dijit/form/Form" method="post">
<script type="dojo/method" event="onSubmit">
if(this.validate()){
alert('your form is valid');
return confirm('Form is valid, press OK to submit');
}else{
alert('Form contains invalid data. Please correct first');
return false;
}
return true;
</script>
<label for="value1Box">A textbox set with a value from the above textbox:</label><br/>
<input type="text" required="true" name="firstName" id="firstName" placeholder="Your Name"
data-dojo-type="dojo/dijit/form/ValidationTextBox" missingMessage="Ooops! You forgot your first name!" /><br/>
<input type="text" required="true" name="website" id="website" placeholder="Your Website"
data-dojo-type="dijit/form/ValidationTextBox" validator="dojox.validate.isUrl" /><br/>
<input type="text" required="true" name="email" id="email"
data-dojo-type="dijit/form/ValidationTextBox" validator="dojox.validate.isEmailAddress" /><br/>
<input type="submit" value="Submit Form" label="Submit Form"
id="submitButton" data-dojo-type="dijit/form/Button" />
</form>
</body>
</html>
//声明性小部件的加载要求
需要([“dojo/parser”,
/*dojox/validate资源*/
“dojox/validate/us”、“dojox/validate/web”,
/*基本dijit类*/
“dijit/form/CheckBox”、“dijit/form/Textarea”、“dijit/form/FilteringSelect”、“dijit/form/TextBox”、“dijit/form/ValidationTextBox”、“dijit/form/DateTextBox”、“dijit/form/TimeTextBox”、“dijit/form/Button”、“dijit/form/RadioButton”、“dijit/form/form/DateTextBox”,
/*基本dojox类*/
“dojox/form/BusyButton”、“dojox/form/CheckedMultiSelect”,
“dojo/domReady!”);
在此处插入标题
if(this.validate()){
警告(“您的表单有效”);
返回确认('表格有效,按OK提交');
}否则{
警报('表单包含无效数据。请先更正');
返回false;
}
返回true;
使用上述文本框中的值设置的文本框:
目录结构
您在以下HTML片段中使用了错误的类型:
<input type="text" required="true" name="firstName" id="firstName" placeholder="Your Name"
data-dojo-type="dojo/dijit/form/ValidationTextBox" missingMessage="Ooops! You forgot your first name!" />
正如您在这里看到的,您在这里使用的是dojo/dijit/form/ValidationTextBox
,但它应该是dijit/form/ValidationTextBox
,就像其他两个一样
如果你这样做,它应该正常工作,至少在这方面