//ajax
function retrieveURL(url,nameOfFormToPost) {
//convert the url to a string
url=url+getFormAsString(nameOfFormToPost);
//Do the AJAX call
if (window.XMLHttpRequest) {
// Non-IE browsers
req = new XMLHttpRequest();
req.onreadystatechange = processStateChange;
try {
req.open("GET", url, true);
} catch (e) {
alert("Server Communication Problem\n"+e);
}
req.send(null);
} else if (window.ActiveXObject) {
// IE
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange=processStateChange;
req.open("GET", url, true);
req.send();
}
}
}
//取到FOME中的参数
function getFormAsString(formName){
//Setup the return String
returnString ="";
//Get the form values
formElements=document.forms[formName].elements;
//loop through the array, building up the url
//in the format '/strutsaction.do&name=value'
for(var i=formElements.length-1;i>=0; --i ){
//we escape (encode) each value
returnString+="&"
+escape(formElements[i].name)+"="
+escape(formElements[i].value);
}
//return the values
return returnString;
}
//这个是回调函数
function processStateChange() {
var info = document.getElementById("alert_message").value;
if (req.readyState == 4) { // Complete
if (req.status == 200) { // OK response
//这里做回调的处理
var json = eval('(' + req.responseText + ')');
if(json.flag=='false'){
alert(json.message+""+info);
}else if(json.flag=='true'){
doQuery();
}else if(json.flag=='somefalse'){
//清空删除列表
clearChecked();
alert(json.message+""+info);
doQuery();
}
/*//Split the text response into Span elements
spanElements =
splitTextIntoSpan(req.responseText);
//Use these span elements to update the page
replaceExistingWithNewHtml(spanElements);
*/
} else {
alert("Problem with server response:\n "
+ req.statusText);
}
}
}
后台返回JSON数据如
:{message:'xxx',flag:'xxx'}
ajax 拿到JSON使用
var json = eval('(' + req.responseText + ')');