JSP Form 在 Eclipse 中没有达到 JavaScript
jsp form is not reaching javascript in eclipse
我正在使用Javascript在jsp中尝试表单验证。我的代码如下所示。我的 jsp 页面没有到达 .js 文件以进行 eclipse 中的验证。
function validateForm(){
alert("entered js");
var name = document.getElementsByName("name");
var age = document.getElementsByName("age");
var id = document.getElementsByName("id");
//not null validation
if(name == null || name == "" ){
alert("Please give your name");
}
if(age == null || age == ""){
alert("Please give your age");
}
if(id == null || id == ""){
alert("Pls give an id");
}
//age validation .. only numbers
if(/'D/.test(age)){
alert("Only numbers in age pls");
}
//id validation .. only numbers
if(/'D/.test(id)){
alert("only numbers in ID pls ..");
}
}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src = "/js/studentScript.js"></script>
<title>Insert title here</title>
</head>
<body>
<form action="/HelloWeb/controller" method="post" onSubmit="return validateForm()">
<table>
<tr>
<td><label>Name: </label></td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td><label>Age: </label></td>
<td><input type="text" name="age"></td>
</tr>
<tr>
<td><label>Id: </label></td>
<td><input type="text" name="id"></td>
</tr>
</table>
<input type="submit" name="submit" value="Submit" >
</form>
</body>
</html>
我的项目资源管理器看起来像这样
在此处输入图像描述
请提出解决方案
我尝试创建一个结构和文件与您的项目相同的项目为了使页面正常工作,我可以建议尝试以下方法之一:
1-删除开头的斜杠
<script type="text/javascript" src = "js/studentScript.js"></script>
2-添加上下文名称
<script type="text/javascript" src = "<%=request.getContextPath()%>/js/studentScript.js"></script>
两者都为我工作,没有问题。
我现在知道问题了..问题是我试图在我的项目中应用 Spring mvc,它不允许使用 JScript 进行客户端验证(不是以通常的方式......我仍在尝试研究这个主题)。因此,以下问题。
对不起,如果我给你们带来了麻烦。
-
为什么 js 没有响应?
通往
.js
的路径不正确。尝试使用绝对网址,例如http[s]://host[:port]/HelloWeb/js/studentScript.js
-
js的编写方式存在错误(不是语法错误)。
document.getElementsByName()
给你NodeList
,而不是一个 html 元素。要从文本框中获取实际值,请使用value
属性,例如document.getElementsByName('name')[0].value
,其余的依此类推。
相关文章:
- Javascript form innerHTML
- Javascript form.submit()方法是如何工作的
- 从Django中的Javascript Form访问GET Form数据
- javascript form validaton, 验证消息 快速消失.
- 用原型扩展Javascript Form对象
- Javascript Form calculator
- javascript form.submit() 丢失由 GA _linkByPost 创建的查询字符串
- Javascript Form Validation.如何使用 OnFocus 在输入字段上时消除错误
- Javascript Form
- JavaScript <form> validation
- HTML5 Pop using Javascript form validation
- JavaScript Form Calculation with Radio Buttons & Textbox
- 删除 javascript form.setAttribute 操作
- HTML和Javascript:Form获胜't提交
- Javascript form.submit()失败并停止执行其余的Javascript代码
- Javascript form.submit()在Firefox中不起作用
- asp.net mvc 3 - Unobtrusive javascript: form not submitting
- Javascript Form Validation赢得't验证
- Javascript Form与Ajax一致工作以登录到Private Magento Store的问题
- Javascript Form Validation access values