<body> <input type="text" name="num1" id="n1"/><br/> <input type="text" name="num2" id="n2"/><br/> <input type="button" value="add" onclick="ajaxSub()"/><br/> <div id="div1"></div> </body>
JavaScript代碼:javascript
<script type="text/javascript"> var xmlHttpRequest=null; function ajaxSub(){ if(window.ActiveXObject){ xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP"); }else if(window.XMLHttpRequest){ xmlHttpRequest=new XMLHttpRequest(); } if(xmlHttpRequest!=null){ var v1=document.getElementById("n1").value; var v2=document.getElementById("n2").value; xmlHttpRequest.open("GET","AjaxServlet2?v1="+v1+"&v2="+v2+"",true); xmlHttpRequest.onreadystatechange=ajaxCallback; // xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");使用post方式提交須要設置,get方式不須要 xmlHttpRequest.send(null); } function ajaxCallback(){ if(xmlHttpRequest.readyState==4){ if(xmlHttpRequest.status==200){ var text=xmlHttpRequest.responseText; document.getElementById("div1").innerHTML=text.fontcolor("red"); } } } } </script>
servlet代碼:html
public class IndexServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String v1=request.getParameter("v1"); String v2=request.getParameter("v2"); System.out.println("v1="+v1+",,"+"v2="+v2); String v3=String.valueOf(Integer.valueOf(v1)+Integer.valueOf(v2));//將輸入的兩個數的總和轉爲字符串 PrintWriter out=response.getWriter(); response.setHeader("pragma", "no-cache");//設置響應頭,no-cache指示客戶端不能緩存響應消息 response.setHeader("cache-control", "no-cache");//設置響應頭,no-cache指示客戶端不能緩存響應消息,跟上一行代碼做用同樣,通常合用 out.println(v3); out.flush(); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
結果以下:java