java ajax post_2、Ajax与Java通过POST方式交互
1、關(guān)于Ajax交互的步驟
1.1 ?獲取到xmlhttprequest
1.2 ?設(shè)置xmlhttprequest的onreadystatechange響應(yīng)事件
1.3 ?準(zhǔn)備獲取ajax請求?xmlhttp.open("POST", "AjaxServerlet", true);
1.4 ?設(shè)置消息頭為表單形式,模仿表單的POSt提交xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
1.5 ?發(fā)送ajax請求xmlhttp.send("age=18&name=zhang"); ?//Ajax的POST請求,參數(shù)是通過xmlhttp.send()方法攜帶的
1.6 ?處理Ajax交互獲取到的數(shù)據(jù),具體的處理在xmlhttprequest的onreadystatechange響應(yīng)事件中實(shí)現(xiàn)
2、Ajax與Java的Servlet通過POSt交互
2.1
html代碼
點(diǎn)擊
? ? ?2.2 JavaScript代碼
//1、獲取到xmlhttprequest
function getXmlhttp() {
var xmlhttp;
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlhttp;
}
window.onload = function() {
document.getElementById('mybtn').onclick = function() {
//1、獲取到xmlhttprequest 對象
var xmlhttp = getXmlhttp();
//2、xmlhttprequest的響應(yīng)事件
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//5、操作獲取到的信息
//5.1ajax返回的數(shù)據(jù),轉(zhuǎn)換為javascript對象
// 5.1.1 利用eval實(shí)現(xiàn)轉(zhuǎn)換
var ajaxResult = eval("(" + xmlhttp.responseText + ")");
//5.1.2 利用jquery的方法,對于jQuery.parseJSON(),鍵值必須為雙引號
/* var ajaxResult = jQuery.parseJSON(xmlhttp.responseText); */
alert(ajaxResult)
//5.2獲取JavaScript對象的屬性
var age = ajaxResult.age;
var name = ajaxResult.name;
//5.3獲取到頁面的DIV,并設(shè)置內(nèi)容
var mydiv = document.getElementById("myAjax");
mydiv.innerHTML = "name:" + name + "," + "age:" + age;
}
}
//3、準(zhǔn)備獲取ajax請求
//3.1 對于get請求,帶參數(shù)的方式,直接在open函數(shù)的請求地址帶上參數(shù)
xmlhttp.open("POST", "AjaxServerlet", true);
//4、發(fā)送ajax請求
xmlhttp.setRequestHeader("Content-type",
"application/x-www-form-urlencoded");
xmlhttp.send("age=18&name=zhang");
};
}
? ? ? ?2.3 ?style代碼
#myAjax {
width: 400px;
height: 400px;
border: 1px dashed red;
text-align: center; /* div中的文字水平方向居中顯示 */
line-height: 400px; /*這個和div的高度相同,div中的文字就會垂直方向居中顯示 */
font-size: 16px;
font-weight: bold;
}
? ? ?2.4 ?AjaxServerlet.java代碼
public class AjaxServerlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String age = request.getParameter("age");
String name = request.getParameter("name");
Person person = new Person(name, age);
String personJSON = "{\"name" + "\":\"" + name + "\"," + "\"age"
+ "\":" + age + "}";
System.out.println(personJSON);
response.getWriter().write(personJSON);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}2.5web.xml代碼
AjaxServerlet
com.ajax.com.AjaxServerlet
AjaxServerlet
/AjaxServerlet
index.html
原文:http://blog.csdn.net/zbw18297786698/article/details/51330357
總結(jié)
以上是生活随笔為你收集整理的java ajax post_2、Ajax与Java通过POST方式交互的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java编写简单计算器_编写java程序
- 下一篇: java date的使用_java:Da