我是 JSP 和 servlet 的新手,但我一直在做很多研究并尝试了很多,但我无法让它工作。我正在使用 servlet 和 JSP。我正在做一种登录,在其中我需要发送一些表单信息和一个数组(在这种情况下我已经创建了数组,但我从 Dynatree 获得了一个类似的数组)到 servlet,管理信息,然后转到另一页。
我尝试了很多东西,但似乎没有任何效果。可能是我做错了很多事情,但我没有更多的想法来测试可能会起作用。
顺便说一句,我正在使用 Tomcat 开发 netBeans。
JSP代码:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Dynatree - Example</title>
<script src="jquery/jquery.js" type="text/javascript"></script>
<script src="jquery/jquery-ui.custom.js" type="text/javascript"></script>
<script src="jquery/jquery.cookie.js" type="text/javascript"></script>
<link href="src/skin/ui.dynatree.css" rel="stylesheet" type="text/css">
<script src="src/jquery.dynatree.js" type="text/javascript"></script>
<script type="text/javascript">
function myFunction(){
alert("Hello! I am an alert box!");
};
</script>
</head>
<body class="example">
<h1>Example: Form</h1>
<form action="Test" method="post" name="form" >
Username: <input type="text" name="userName" />
<br>
<textarea name="comment"></textarea>
<br>
<input type="submit" id="id2" value="Send data">
<br>
<input type="button" onclick="myFunction();" value="Show alert box">
</form>
<script type="text/javascript">
$("#id2").click(function() {
var json=[1,2,3,4];
$.ajax({
url:"Test",
type:"POST",
dataType:'json',
data: {json:json},
success:function(data){
alert("Hello! I am an alert box!");
}
});
});
</script>
</body>
</html>
还有我的 servlet“测试”代码:
@WebServlet(urlPatterns = {"/Test"})
public class Test extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
String descr = request.getParameter("comment");
String[] myJsonData = request.getParameterValues("json[]");
out.print("\nDescription:");
out.print(descr);
out.print("\nPrint:");
out.print(myJsonData);
// response.sendRedirect("pasoServlet.jsp");
}
} /* end doPost() */
}
我的主要问题是,当我尝试打印“myJsonData”时,打印空,我认为它不应该,但我不知道为什么会这样。
Description:This is the description
Print:null