comelyyyjj 发表于 2013-1-29 12:07:18

ajax示例

//ajaxfunction retrieveURL(url,nameOfFormToPost) {      //convert the url to a stringurl=url+getFormAsString(nameOfFormToPost);      //Do the AJAX callif (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 StringreturnString ="";          //Get the form valuesformElements=document.forms.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.name)+"="         +escape(formElements.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 + ')');
页: [1]
查看完整版本: ajax示例