0

2 日以来、この問題に遭遇しました。javascript を使用して以下の URL からデータを取得する必要があります。

http://www.apexweb.co.in/Apex_Quote/Download_Data.asp?un=9393910169

静的データを解析しましたが、URL からデータを解析する必要があります。助けて

var employees = [{"ContactName":"AksharmaDelhi","ContactNumber":"9313146690","MainCategory":"NONLOCAL","SubCategory":"LIG"},
{"ContactName":"AbhijeetPune","ContactNumber":"9271263359","MainCategory":"NONLOCAL","SubCategory":"LIG"},
{"ContactName":"Abhinandan","ContactNumber":"9954534007","MainCategory":"NONLOCAL","SubCategory":"LIG"},
{"ContactName":"Abhishek","ContactNumber":"9302172932","MainCategory":"NONLOCAL","SubCategory":"LIG"},
{"ContactName":"AbhishekPuri","ContactNumber":"9303928233","MainCategory":"NONLOCAL","SubCategory":"LIG"},
{"ContactName":"AbhishekZhakkas","ContactNumber":"9863027167","MainCategory":"NONLOCAL","SubCategory":"MIG"},
{"ContactName":"Abin","ContactNumber":"8891886340","MainCategory":"NONLOCAL","SubCategory":"MIG"},
{"ContactName":"AccountantSrinivas","ContactNumber":"9949861074","MainCategory":"LOCAL","SubCategory":"MIG"},];

alert(employees.length);   //get length 

for(var i = 0;i<employees.length;i++){

alert(employees[i].ContactName + employees[i].ContactNumber + employees[i].MainCategory + employees[i].SubCategory);

}
</script>
4

2 に答える 2

1

それには多くの方法があります。私は$.ajaxを次のように使用します。

$.ajax({
            url : "http://www.apexweb.co.in/Apex_Quote/Download_Data.asp?un=9393910169",
            type : "get",
            dataType : 'text',
            success : function(data) {                                  
                var employees = $.parseJSON(data);
                for(var i = 0;i<employees.length;i++){
                alert(employees[i].ContactName + employees[i].ContactNumber + employees[i].MainCategory + employees[i].SubCategory);
                }                       
            },
            error : function() {
                //console.log("your call failed");
                }                                   
        });

URL からフェッチされたデータは、コールバックのdataパラメーターとして渡されます。$.getJsonsuccessとは対照的に、これにより、返される内容をより詳細に制御できます。

このアプローチでは、dataType を に設定しtextます。つまり、jquery は私の結果に対して「賢い」ことをしようとはしません。パラメータに設定した場合jsondata解析されてすぐに使用できます。手動で解析する必要はありません。

var employees = $.parseJSON(data);

于 2013-05-20T13:11:54.443 に答える
0

クロス ドメイン ajax の場合、 $.getJSON() を使用することをお勧めします

$.getJSON("http://my-site-return-json.com/index.php?", function(data){
  // Load Finish
});

サーバー側では

コールバックを返すことを忘れないでください

$callback = $_GET['callback'];
$arr = array("a" => "1", "b" => "2");
echo $callback."(".json_encode($arr).")";
于 2013-05-21T05:40:33.490 に答える