在apache corodova中准备好在设备上显示任何内容

时间:2017-11-28 16:17:44

标签: javascript jquery html ajax cordova

我在onDeviceReady中调用了BindUsers函数,但在调试时没有显示任何内容。

我在index.js中写过这个,我在index.html上调用了它。但它仍然没有显示任何东西。但是,当我将其作为一个网站进行测试时,它可以正常显示。我通过在asp中建立一个网站来测试它。

function onDeviceReady() {        
    document.addEventListener( 'pause', onPause.bind( this ), false );
    document.addEventListener('resume', onResume.bind(this), false);
    BindUsers();
};

//The BindUsers begins here

function BindUsers() {

    $.ajax({
        type: 'GET', // Method type
        url: 'https://newsapi.org/v2/top-headlines?sources=the-hindu&apiKey=1f9da58adc9f4197bc26b657821e0722',
        contentType: 'application/json',
        dataType: 'json',
        headers: {
            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
        },
        success: function (data) {
            //alert(data.articles.title);
            if (data.articles.length > 0) {
                var articles = data.articles;
                for (var key in articles) {
                    //alert(articles[key]['title']);
                    $("#tblUsers").append("<tr> </tr><tr><td ><img src='"
                        + articles[key]['urlToImage'] + "' class='img' ></td></tr> <tr></td><td class='ttlhead'><span class='title'>"
                        + articles[key]['title'] + "</span></td></tr><tr><td ><p class='content'>"
                        + articles[key]['description'] + "</p><a href='"
                        + articles[key]['url'] + "' class='content'>Continue..</a></td></tr><tr><td >"
                        + articles[key]['publishedAt']
                        + "</td></tr>");
                }
            }
        },
        error: function (result) {
            alert('Sorry');
        }
    });
}

1 个答案:

答案 0 :(得分:0)

看起来您的应用会立即尝试获取一些远程JSON。你在iOS上尝试这个吗?如果是这样,您可能需要在plist中允许任意加载,例如:

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitraryLoads</key>
  <true/>
</dict>