从ajax调用打开文件?

时间:2011-05-10 00:48:38

标签: jquery asp.net-mvc-2 c#-3.0

我正在尝试从ajax调用打开一个文件,但是它没有打开?当我直接在浏览器中输入它时,它可以工作吗(http:// localhost / home / showfile)?

    <script type="text/javascript">
        $.ajax({
        type: 'POST',
        url: "/Home/ShowFile"
    })

</script>

  public ActionResult ShowFile()
    {
        return File(@"C:\\development\\FileOpen\\FileOpen\\TextFile1.txt", "application/octet-stream", Server.HtmlEncode("TextFile1.txt"));
    }

2 个答案:

答案 0 :(得分:1)

在您获取文件后,您尝试执行的内容并不十分清楚,但您可以首先向$.ajax添加回调以执行返回数据的。例如:

$.ajax({
    type: 'POST',
    url: '/Home/ShowFile',
    success: function (data) {
        console.log(data);                // log the response, or
        $('#some-element-id').text(data); // dump it into an existing element
    }
})

你真的需要HTTP帖子吗?你没有发送任何请求,所以为什么不使用HTTP get?

答案 1 :(得分:0)

首先,由于same origin policy,您需要确保该文件位于本地服务器上。然后你可以使用像jQuery load这样的东西来加载文件。

   $('#destination').load('/path/to/file.txt');