javascript - 如何使用 Javascript 读取位于 iPhone PhoneGap 项目文件夹中的 json 文件

标签 javascript jquery ios json cordova

我必须从项目中的文件夹中读取一个 JSON 文件。

我正在使用以下代码:

var obj = "www/places.json";

如何使用 Javascript 在 iPhone PhoneGap 中读取位于项目文件夹 www 中的 JSON 文件?

最佳答案

您会像在您的服务器上一样阅读它。

解决方案 1 - jQuery

如果 jQuery 的使用不是问题,那么可以这样使用它:

//Load categories object JSON
jQuery.getJSON("categories.json", function(data){         
    // data is yours parsed object
});

示例:

HTML :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"/>
    <script src="http://www.fajrunt.org/js/jquery-1.9.1.min.js"></script>       
    <title>Read JSON Demo</title>

    <script>    
        jQuery.getJSON("categories.json", function(data){         
            alert(data.balance);
        });         
    </script>
</head>

<body>
    Read JSON Demo
</body>
</html>

JSON 文件:

{"balance":1000.21,"num":100,"nickname":null,"is_vip":true,"name":"foo"} 

解决方案 2 - 纯 javascript

如果你只想使用 vanilla javascript 那么这是适合你的解决方案

var xmlhttp;
var jsonObject;

// code for IE7+, Firefox, Chrome, Opera, Safari
if (window.XMLHttpRequest)
{
    xmlhttp=new XMLHttpRequest();
}
// code for IE6, IE5
else
{
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}

xmlhttp.onreadystatechange=function()
{
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        jsonObject = JSON.parse(xmlhttp.responseText);
        alert(jsonObject.balance);                       
    }
}

xmlhttp.open("GET","categories.json",true);
xmlhttp.send();

示例:

HTML :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"/>
    <title>Read JSON Demo</title>

    <script>
        var xmlhttp;
        var jsonObject;

        // code for IE7+, Firefox, Chrome, Opera, Safari
        if (window.XMLHttpRequest)
        {
            xmlhttp=new XMLHttpRequest();
        }
        // code for IE6, IE5
        else
        {
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }

        xmlhttp.onreadystatechange=function()
        {
            if (xmlhttp.readyState==4 && xmlhttp.status==200)
            {
                jsonObject = JSON.parse(xmlhttp.responseText);
                alert(jsonObject.balance);                       
            }
        }

        xmlhttp.open("GET","categories.json",true);
        xmlhttp.send();
    </script>
</head>

<body>
    Read JSON Demo
</body>
</html>

JSON 文件:

{"balance":1000.21,"num":100,"nickname":null,"is_vip":true,"name":"foo"} 

关于javascript - 如何使用 Javascript 读取位于 iPhone PhoneGap 项目文件夹中的 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16376313/

相关文章:

jQuery 动画展示下滑、显示和淡出的流程

iphone - Objective-C:显示 2 个 UItableView

iphone - 在哪里可以下载较早版本的 iOS 以进行向后兼容性测试?

javascript - 传单 Google map 和 d3 Voronoi 图叠加

javascript - 选择一行并单击数据表中的按钮后获取表行的行ID

javascript - jQuery Ajax 重写失败方法

ios - MCSessionDelegate 要求类符合 NSObjectProtocol

javascript - 基于 Angular4 的 Web 应用程序部署

javascript - 在 AJAX 自动完成中操作 JSON

javascript - 我应该在删除 DOM 元素后调用 jQuery.off 吗?