无法加载CSV内容而非下载

时间:2013-03-30 23:14:11

标签: jquery jsp

下午好,

使用Yahoo Finance,按照以下链接以及一些方便的URL标记,将自定义可下载的CSV,几乎包含您喜欢的任何股票信息。该URL会自动将CSV下载到您的下载默认位置:

http://finance.yahoo.com/d/quotes.csv?s= “歌” +&安培; F = “S”

但是,我不想将此内容下载到我的计算机上,我想将其下载到网页中。这就是我一直在玩的东西:

JSP,index.jsp:

<!DOCTYPE JSP>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>
<script src="Scripts/script.js"></script>
<style>
#Generic_Container {
height:500px;
width:500px;
background-color:transparent;
}
#Link1 {
width:200px;
height:200px;
position:absolute;
top:5px;
left:5px;
background-color:blue;
color:white;
}
</style>
</head>
<body>
<div id="Generic_Container">
    <a href='http://finance.yahoo.com/d/quotes.csv?s="GOOG"+&f="s"' id='Link1'></a>
</div>
</body>
</html>

和相关的文件,script.js(差的命名约定,我意识到;但是,这个例子仅用于好奇目的):

$('document').ready(function() {

$('#Link1').click(function(event) {
    event.preventDefault();
    $('#Link1').load('http://finance.yahoo.com/d/quotes.csv?s="GOOG"+&f="s"');
});

});

这应该阻止从网站下载文件,而是将内容加载到框架中,但我必须做错事。如果我确实做了一些不那么合乎逻辑的事情,我也愿意采用其他方法来完成这项任务。

1 个答案:

答案 0 :(得分:0)

建议使用Yahoo的YQL AJAX代理服务将数据作为jsonp返回,并从那里将其解析为html。 YQL沙箱控制台提供了如何检索引号的示例

YQL Console Quote Example

在控制台中设置网址后,可以使用$.getJSON来检索数据。

其他选项是在您自己的服务器上使用代理,该代理使用CURL检索csv并解析为html或json,以便您使用AJAX进行检索