javascript与jsp发送请求到servlet的几种方式实例
JavaScript提交至servlet 5种方式:
/**第一种提交方式 * */ function submitForm1(){ window.location.href="TestServlet?param=hrefMethod" rel="external nofollow" ; } /**第二种提交方式 * */ function submitForm2(){ var form=document.forms[0]; form.action="TestServlet?param=formMethod"; form.submit(); } /** *第三种提交方式 */ var xmlHttp; //创建xmlHttp function createXMLHttpRequest(){ if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari xmlHttp=new XMLHttpRequest(); }else {// code for IE6, IE5 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } //Ajax使用get方式发送 function submitForm3(){ createXMLHttpRequest(); var queryString="TestServlet2?"; queryString=queryString+"¶m=" + new Date().getTime(); xmlHttp.onreadystatechange=handleStateChange; xmlHttp.open("GET",queryString,true); xmlHttp.send(null); } //Ajax使用post方式发送 function submitForm4(){ createXMLHttpRequest(); var url="TestServlet2?param=" + new Date().getTime(); xmlHttp.open("POST",url,true); xmlHttp.onreadystatechange=handleStateChange; xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlHttp.send("nihao"); } function handleStateChange(){ if(xmlHttp.readyState==4){ //解析返回值 if(xmlHttp.status==200){ var responseText=document.createTextNode(xmlHttp.responseText); alert("后台返回的返回值: "+xmlHttp.responseText); } } } /**第五种方式 post提交 * @param to * @param p */ function submitForm5() { var myForm=document.createElement("form") var params={"param":"zs","param2":"li"}; myForm.method = "post"; myForm.action = "TestServlet"; myForm.style.display = "none"; for ( var k in params) { var myInput = document.createElement("input"); myInput.name= k; myInput.value= params[k]; myForm.appendChild(myInput); } document.body.appendChild(myForm); myForm.submit(); //document.body.removeChild(myForm); return myForm; }
jsp提交至servlet的6种方式:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <!-- 方式四 --> <!-- <meta http-equiv="refresh" content="0; url=TestServlet?param=方式四"> --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Insert title here</title> </head> <body> <!-- 方式一 --> <%-- <% RequestDispatcher rd = getServletContext().getRequestDispatcher("/TestServlet?param=方式一"); rd.forward(request, response); %> --%> <!-- 方式二 --> <%-- <% response.sendRedirect("TestServlet?param=方式二"); %> --%> <!-- 方式三 --> <%-- <jsp:forward page="TestServlet?param=方式3"/> --%> <!-- 方式五 --> <%-- <% int stayTime=0; String URL="TestServlet?param=Method 5"; String content=stayTime+";URL="+URL; response.setHeader("REFRESH",content); %> --%> <!-- 方式六 --> <% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocation = "TestServlet?param=Method 6"; response.setHeader("Location",newLocation); %> </body> </html>
赞 (0)