JavaScript通过XMLHttpRequest获取json数据


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>get json</title>
    <script type="text/javascript">

        window.onload = function() { /*设置在页面加载完后执行以下js代码*/
            var url = "sales.json"/*将连接赋到变量url中*/
            var request = new XMLHttpRequest();/*用new创建一个XHR对象*/
            request.open("GET",url);/*设置XHR对象的请求方法与路径*/
            request.send(null);/*设置XHR对象不发送数据到服务器*/
            request.onload = function() {/*设置当获XHR对象获取到返回信息后执行以下代码*/
                if(request.status == 200) {/*如果返回的状态为200,即为成功获取数据*/
                    var contentdiv = document.getElementById("content");/*获取DOM中id为luck的p元素*/
                    var jsoncontent = JSON.parse(request.responseText);/*将获取的信息解析为json对象*/
                    var jsondiv = document.createElement("div");/*在js中创建一个div元素命名为jsondiv*/
                    jsondiv.innerHTML = jsoncontent[0].name;/*将json对象中第一个元素的name属性对应的值写入jsondiv中*/
                    contentdiv.appendChild(jsondiv);/*将jsondiv放入DOM中,作为contentdiv的子元素*/
                }
            }

        }

    </script>
</head>
<body>
    <p>获取的json内容如下</p>
    <div id="content"></div>
</body>
</html>

var xhr = new XMLHttpRequest();
          xhr.open("post","../controllerpath", true);
		  //如果在open 方法中指明是post请求 在send提交之前需要设置Http头设置post格式需要指定
          xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");  
          xhr.onreadystatechange = function() {//Call a function when the state changes.
              if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {//xhr.readyState == 4等价于XMLHttpRequest.DONE
                  // 请求结束后,在此处写处理代码
                  //alert(xhr.responseText);
              
            	  var responseText = xhr.responseText;//返回结果
            	  
            	  var obj = JSON.parse(responseText); 
            	  if(obj['FLAG']=='SUCCESS'){
  	    	    	 var data = obj['rest'];
  	    	    	 alert(JSON.stringify(data));
  	    	    	 initField(data)
  	    	    	}
            	  
              }
          }
          xhr.send("参数1="+参数值1变量+"&参数2="+参数值2变量+"&参数3="+参数值3变量);


内容版权声明:除非注明,否则皆为本站原创文章。

评论