2

我正在使用 Phonegap/Apache Cordova 构建一个混合 Android 应用程序。我的应用程序应该从我的 web api 获取数据。我正在使用 JSON 将数据提供给 APP。所以我得到了以下代码:

function init() { 
document.addEventListener('deviceready', onDeviceReady, false);
var url = "http://23.21.128.153:3000/regions.json";var jsonresults;
    $.getJSON(url,function(data){
        jsonresults = data;
          $.each(jsonresults, function(i,v){
          $('#main-content').append('<li>'+jsonresults[i].name+'</li>');
        });
    });
}

而且在 html 的主体上,我有一个名为 main-content 的 div。Everythings 在 Eclipse 浏览器中运行良好,但在 Android 模拟器上无法运行。不确定是否有另一种方法可以使用 JSON 从 Web API 中提取数据并在获取数据后动态创建 HMTL 元素。

https://gist.github.com/2956660

4

1 回答 1

1

从 web api 获取数据非常容易。试试这个代码。它会解决你的问题,

通过jquery mobile非常容易。您可以使用普通的 Ajax 和一点点 JSON 来完成您的工作。我完成了 php 服务器。这里的示例代码,

通过 jquery 向服务器发送请求。

$.ajax({
          url: <your Server URL>,
          dataType: 'jsonp',
          jsonp: 'jsoncallback',
          timeout: 5000,
          success: function(data, status){
                             /*Process your response here*/

      jsonresults = data;
      $.each(jsonresults, function(i,v){
      $('#main-content').append('<li>'+jsonresults[i].name+'</li>');
    });

 $.mobile.changePage($('#index')); /*page navigate the particular where data shown*/
 $("#index").trigger("pagecreate"); /*This is like a page refresh and load the injected data in jquery*/
                        }
       });

在 php 服务器文件中,

<?php
$data="I am sending response to you";

/*you have to mention this callback compulsory*/

echo $_GET['jsoncallback'] . '(' . json_encode($data) . ');';
?>
于 2012-06-20T03:11:01.847 回答