我正在尝试使用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>
答案 0 :(得分:1)
通过请求http://www.samplesite.com/files/
,您将获得该页面的原始html代码。
然后你需要手动解析它(在成功函数中)来检索url。如果你很幸运,页面形成良好,获得这些网址不会太难,如果不是......祝你好运。
答案 1 :(得分: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中。