jQuery没有解析PhoneGap中的JSON

时间:2012-07-06 18:37:32

标签: android jquery cordova jsonp

我正在尝试使用带有jQuery的JSONP从服务器解析JSON。 以下代码与PhoneGap一起使用,用于使用HTML创建Android应用。 当我在Safari中使用下面的代码时,例如,它工作正常,但有电话间隙,它根本不起作用!

有人知道发生这种情况的原因吗?

<!DOCTYPE HTML>
<html>
<head>
    <title>PortalARP</title>
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
    <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
    <script type="text/javascript" charset="utf-8" src="cordova-1.8.0.js"></script>
    <script>

        $(document).ready(function () {
            $("#conteudoArea").append("<ul></ul>");
            $.ajax({
                url: 'http://portalarp.com.br/portal/produto/gerar_json?id_categoria_pai=56',
                dataType: 'jsonp',
                crossDomain: true,
                jsonp: false,
                jsonpCallback: 'jsonFlickrFeed',
                success: function (d) {
                    $('#title').text(d.id_produto);

                    var i, l = d.items.length, newLi, newItem;

                    $('<ul id="photoList"></ul>').appendTo('#main');

                    for (i = 0; i < l; i++) {
                        newLi = $('<li></li>');
                        newItem = d.items[i];

                        $('<h2>' + newItem.nm_produto + '</h2>').appendTo(newLi);
                        $('<h3>' + newItem.nm_marca + '</h3>').appendTo(newLi);

                        newLi.appendTo('#photoList');

                    }
                }
            });
        });


    </script>

</head>
<body>

    <div id="main"></div>

</body>

2 个答案:

答案 0 :(得分:0)

我会根据jquery mobile documentation检查$ .support.cors和$ .mobile.allowCrossDomainPages是否均为真。

答案 1 :(得分:0)

res/xml/cordova.xml中的网址列入白名单,它应该有效。

<access origin="http://portalarp.com.br" />

有关详细信息,请查看文档:

http://docs.phonegap.com/en/1.9.0/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide