javascript如何载入外部的json文件

解决方案 »

  1.   

    指用AJAX读取外部JSON数据吧。
    <html>
    <head>
    <style type="text/css">
    p
    {
    border: thin dotted #FF0000
    }
    </style>
    <script type="text/javascript">
      var request = false;
        try {
          request = new XMLHttpRequest();
        } catch (trymicrosoft) {
          try {
            request = new ActiveXObject("Msxml2.XMLHTTP");
          } catch (othermicrosoft) {
            try {
              request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (failed) {
              request = false;
            }
          }
        }
        if (!request)
          alert("Error initializing XMLHttpRequest!");
        function getCustomerInfo() {
          var url = "1.php";
          request.open("GET", url, true);
          request.onreadystatechange = updatePage;
          request.send(null);
        }
        function updatePage() {
      var arr=eval('('+request.responseText+')');
      var str="";
      for(i=0;i<arr.length;i++){
        for(j=0;j<arr[0].length;j++){
        str += arr[i][j]+'|';
    }
    str += "</br>";
      }
          if (request.readyState == 4) {
            if (request.status == 200) {
              document.getElementById("p1").innerHTML=str;
            } else if (request.status == 404) {
              alert("URL does not exist.");
            } else {
              alert("Status is: " + request.status);
            }
         }
       }
    </script>
    </head>
    <body><input type="button" onclick="getCustomerInfo()"
    value="点一点" /><p id="p1"></p></body>
    </html>1.php
    <?php
    $test = array(
      array('小明','18','男','足球'),
      array('小红','19','女','画画'),
      array('小华','17','男','乒乓球')
    );
    echo json_encode($test);
    ?>