0

我正在尝试使用 phonegap 和 jquery 从网站生成可下载文本文件的列表。加载应用程序时应自动获取此列表。因此,如果将另一个文本文件添加到网站然后重新打开应用程序,则新添加的文本文件也应该在列表中。我对这些技术非常陌生,所以如果有人能告诉我我会很感激我在这里做错了。这就是我的 index.html 的样子:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" href="css/index.css" />
    <script type="text/javascript" charset="utf-8" src="cordova-2.7.0.js"></script>
    <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
  </head>
    <script type="text/javascript" charset="utf-8"> 

        document.addEventListener("deviceready",onDeviceReady,false);

        function onDeviceReady() {
          $.ajax({
          url: "http://www.samplesite.com/files/", //I feel like this is wrong
          context: document.body,
          success: function(){
          document.write(document.body); //I feel like I'm doing something very wrong here too
       }
     });
    }
   </script>
  </html>
4

2 回答 2

1

通过请求http://www.samplesite.com/files/,您将获得页面的原始 html 代码。然后您需要手动解析它(在成功函数中)以检索 url。如果你很幸运,页面格式良好,获取这些 url 不会太难,如果不是......祝你好运。

于 2013-06-07T00:55:34.237 回答
0

您需要目标服务器上的一个端点,该端点可以响应文件列表。否则,您只是在检索 html。

打开此页面的开发者工具,将以下代码粘贴到控制台中:

jQuery
 .get("http://stackoverflow.com/questions/16974040/how-to-grab-files-from-a-website-using-phonegap")
  .success(function(html) {alert(html);});

我不推荐屏幕抓取方法,但如果您对此表示满意,您将需要找到一个 javascript html 解析器并解析结果。如果您有一个可以响应实际数据列表的服务,那么您可以将每个列表项添加到 dom。

于 2013-06-07T00:47:10.110 回答