我打算在JavaScript中调用一个函数,然后在单击一个<input type="image">
后调用Servlet。从JavaScript调用Servlet
JSP:
<head>
<script type="text/javascript">
function callServlet() {
document.location.href="test-servlet.jsp";
}
</script>
</head>
<body>
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
...
<input type="image" name="submit"
src="https://www.paypalobjects.com/webstatic/en_US/btn/btn_buynow_pp_142x27.png"
onclick="callServlet()" alt="PayPal - The safer, easier way to pay online!">
</form>
</body>
的Servlet(test-servlet.jsp
):
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<h1>TestServlet called successfully!</h1>");
}
上下文根: http://localhost:8080/mysite/test-servlet.jsp
然而,当我点击图像按钮,没有任何反应。我是JavaScript新手。
你可以使用jquery而不是使用javascript。是否有任何具体要求限制您只使用JavaScript? – Rockstar 2014-11-03 11:32:26
@Rockstar jQuery如何帮助解决这个问题:)? http://meta.stackexchange.com/questions/45176/when-is-use-jquery-not-a-valid-answer-to-a-javascript-question – 2014-11-03 11:34:56
你有什么打算?表单正在PayPal上提交,并且您尝试在点击提交时修改位置(**竞争条件**)。同样,更改位置会生成GET请求,但是您的servlet正在处理POST ...因此,您提供的代码存在多个问题。 – 2014-11-03 11:36:54