【发布时间】:2014-07-29 18:36:11
【问题描述】:
基本上,我正在尝试将表单参数作为发布数据发送到另一个 jsp 并打印参数,但我在完成此操作时遇到了问题。下面是构造 FormData 实例并将其作为 XMLHttpRequest 的 post 数据发送到目标 jsp 的 html 代码。
<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var form = new FormData();
form.append('firstname', 'peter');
form.append('lastname', 'parker');
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","sample.jsp",true);
xmlhttp.send(form);
}
</script>
</head>
<body>
<div id="myDiv"><h2>Text which will be changed on click</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>
</body>
</html>
目标 jsp servlet 代码如下所示,我尝试检索附加到 FormData 实例的参数。
<%
out.println(request.getParameter("firstname"));
out.println(request.getParameter("lastname"));
%>
但是当我尝试运行 jsp 时,我得到的参数打印为空。我是 ajax 和客户端脚本世界的新手。那么有人可以解释一下我如何成功地从 FormData 实例中检索参数吗?
【问题讨论】:
-
你不是在使用 jquery ajax 吗?
-
@Santino'Sonny'Corleone:我不知道 jquery,因为我刚开始使用客户端。这就是为什么
-
好的,我会帮助你的
标签: javascript ajax jsp xmlhttprequest form-data