我试图为我的问题找到任何有用的帖子,但没有找到我的问题: 我想在将表单提交到数据库之前验证表单。这是我的代码:
<%@ page language="java" contentType="text/html; charset=windows-1255"
pageEncoding="windows-1255"%>
<!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=windows-1255">
<title>Registration</title>
<link rel="shortcut icon" href="img/icon0.png" />
<link rel="stylesheet" type="text/css" href="../css/index.css" />
<script type="text/javascript">
function validate_form()
{
var isValid = true;
var username = document.getElementById("username").value;
if (username==null||username==""){
alert("WRong input");
isValid = false;
}
if(isValid == true)
{
return true;
}
return false;
}
</script>
</head>
<body>
<form action = "regServlet" method = "POST" onsubmit="return validate_form()">
<table id="regTable">
<tr>
<td class="firstRow">Username:</td>
<td><input type="text" name="username" value="" size="15"/></td>
</tr>
</table>
<input style="margin:auto;" type="image" name="loginB" src="../img/login_button.png" />
</form>
</body>
</html>
它是在tomcat 6中运行的jsp文件。 当我运行页面时,我的javascript函数根本不起作用。我在功能的开头用警报检查了它。 我的问题是什么?我忘记了什么? Eclipse在表单行上写入错误(显示onsubmit): 不能从外面返回一个函数或方法。
感谢
答案 0 :(得分:1)
您需要为name="username"
提供id="username"
DEMO:http://jsfiddle.net/maniator/tf5zA/
你的js可能更清洁:
function validate_form() {
var isValid = true;
var username = document.getElementById("username").value;
if (username == null || username == "") {
alert("WRong input");
isValid = false;
}
return isValid;
}
答案 1 :(得分:1)
您需要id=username
,因为您有
document.getElementById("username")
答案 2 :(得分:1)
我还遇到了“无法从外部返回功能或方法”。并在https://bugs.eclipse.org/bugs/show_bug.cgi?id=353209
的Eclipse WTP中找到了归档验证错误