如何在javascript中通过ajax获取Json数据?

如何在javascript中通过ajax获取Json数据?,javascript,ajax,json,Javascript,Ajax,Json,我试图通过javascript中的ajax获取json数据。但是在单击update按钮时,我无法从json获取更新的数据。Json数据url也可以正常工作 代码如下: <!DOCTYPE html> <html> <head> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <script type="applicatio

我试图通过javascript中的ajax获取json数据。但是在单击update按钮时,我无法从json获取更新的数据。Json数据url也可以正常工作

代码如下:

<!DOCTYPE html>
<html>
  <head> 
    <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> 
    <script type="application/javascript"> 
function loadJSON() {
    var data_file = "http://www.tutorialspoint.com/json/data.json";
    var http_request = new XMLHttpRequest();
    try {
        // Opera 8.0+, Firefox, Chrome, Safari
        http_request = new XMLHttpRequest();
    } catch (e) {
        // Internet Explorer Browsers 
        try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                // Something went wrong
                alert("Your browser broke!");
                return false;
            }
        }
    }

    http_request.onreadystatechange = function () {
        if (http_request.readyState == 4) {
            var jsonObj = JSON.parse(http_request.responseText);
            alert(jsonObj.name);
            document.getElementById("Name").innerHTML = jsonObj.name;
            document.getElementById("Country").innerHTML = jsonObj.country;
        }
    }

    http_request.open("POST", data_file, true);
    http_request.send();
}
    </script> 

    <title>tutorialspoint.com JSON</title> 
  </head>
  <body> <h1>Cricketer Details</h1>
    <div id="Name">Sachin</div>
    <div id="Country">India</div>
    <button type="button" onclick="loadJSON()">Update Details </button>
  </body>
</html>
在我上面的代码中,我有json数据的url。但是,当单击更新按钮时,我可以通过ajax获得json数据

我找不到我的代码中哪一个是错误的

提前感谢。

如果您有权包含jQuery库,可以使用$.ajax。 使用返回json的常规web方法并调用它,如下所示:

$.ajax({
    type: "POST",
    contentType: "application/json; charset=utf-8",
    url: serverpath + "/Service.asmx/GetJSON",
    data: {},
    dataType: "json",
    success: function (data, textStatus) {
        if (data.hasOwnProperty('d')) {
            data = data.d;
        }
        var jsonObj = data; // or $.parseJSON(data); if required
    },
    error: function (msg) {
        console.log(msg);
    }
});

上面是您所说的代码,但在单击update按钮时,我无法从json获取更新的数据。下面是您所说的代码,但单击update按钮时,我可以通过ajax获取json数据。。现在是什么?到底是什么问题?无法从加载JSON文件http://www.tutorialspoint.com/json/data.json. 您需要将其复制到您自己的web服务器上,并将URL指向那里。请看:@RocketHazmat谢谢。。我会试试看…@Lucky:重要的是不要执行var-http_-request=new-XMLHttpRequest;在试块外面!这完全违背了尝试的目的。只需执行var http_请求;试试{http_request=new XMLHttpRequest;}。$。我知道ajax在任何浏览器中都不是标准的。它是jQuery库的一部分。@FelixKling:您所需要的只是jQuery库。为什么不?他不是在问jqueryDon你不认为那条信息很重要吗?是的,如果没有使用图书馆,你就不应该使用任何图书馆。@FelixKling:你吓了我一跳;我正在逐步完善答案。