get.JSON无法在设备上运行

时间:2014-07-04 08:27:28

标签: javascript jquery json getjson

我是jQuery的新手,现在在App初始化时从服务器上的json-File请求数据。我正在使用带有jQuery的Intel XDK。 完整脚本的代码就在这时:

   <script type="text/javascript">
        // Helper Functions

     String.prototype.format = function() {
        var args = arguments;
        return this.replace(/\{(\d+)\}/g, function (m, n) {return args [n]; });
     };

    // Page init Handler    

    $(document).bind('pageinit', function (event) {
     var page = event.target.baseURI.split('/'); 
        page = page[page.length -1];

        if (!App.initialized) {
            App.initialized = true;
            App.init();    
        }

        switch(page){
        case 'index.html':
                break;
        case 'maps.html':
                break;
        case 'agenda.html':
                Agenda.init();
                break;
        case 'travel.html':
                break; 
        }
    });

     var App = {  
      initialized: false,
        agenda: null,
        init: function (){
            this.cacheAgenda();
        },
        cacheAgenda: function() {
            var me = this;
            var url = "http://myurl/batteries1-4.json";
            $.getJSON(url, function(data1){
                //Sort data by Talk
               data1.sort(function(a,b){
                   return (a.Title < b.Title) ? -1 : (a.Title > b.Title) ? 1 : 0 
                })

                me.agenda=data1;
                console.log(data1);
            });
        }
    };


    //Agenda Objects

    var Agenda = {
    init: function() {
        this.populateList();
    },
    populateList: function(){
            var talk_list=$('#li_Talk > ul');
            talk_list.empty();
            var TalkTemplate=$("#tplTalkItem").html();
            for (var i=0; i<App.agenda.length; i++){
                var item = App.agenda[i];
                talk_list.append(
                TalkTemplate.format(
                    item.Time_tag,
                    item.Time,
                    item.Title,
                    item.Author
                    )
                )
            };
            talk_list.listview("refresh");
    }    

    }          
</script>

当我在模拟器设备上运行代码时,它运行得非常好。 App.agenda显示了一个我可以使用的数组。 Wehen我在Android或iOS App.agenda上运行已编译的应用程序不包含任何数据,调试器不会显示错误。 知道如何让代码工作吗?

PS:我已经编写了与this教程相对应的代码。

0 个答案:

没有答案