我有一个jsp页面-
<%@page import="java.text.Normalizer.Form"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<legend>Create new customer</legend>
<%!
boolean checkForm(Form theForm)
{
// some checks on "theForm" ..
return false ;
}
%>
<form action="CreateCustomerServlet" method="GET" onsubmit=<%=checkForm() %>>
// form's fields ..
<input type="submit" value="Create customer" />
</form>
</fieldset>
</body>
</html>
我试图做的是,当按下submit
时,它将转到checkForm
函数并检查表单,并且只有当checkForm
返回true
时,它才会转到CreateCustomerServlet
servlet。
但是当我在服务器上运行这个页面并按下submit
按钮时,我看到它从checkForm
中被忽略,直接转到CreateCustomerServlet
servlet。
我知道用javascript实现这一点很容易..但是我想用java函数来实现。
发布于 2012-08-03 14:08:13
当对JSP进行评估时,它会生成一个返回给用户的静态HTML页面。在收到表单提交之前,服务器不会再次参与该过程。如果您确实希望从onsubmit
处理程序执行一些服务器端行为,则需要通过AJAX来实现。
发布于 2012-08-03 14:08:26
问题是你不能直接从客户端调用java函数(放在服务器上)。您可以在客户端移动检查逻辑,并使用JavaScript。
发布于 2012-08-04 09:48:07
您可以使用javascript来满足您的需求
https://stackoverflow.com/questions/11797255
复制相似问题