社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Jquery

jquery是否提交了一个表单来下载文件?

Stefan Ladwig • 5 年前 • 1220 次点击  

我有一个表单,可以发布到触发文件下载的url。服务器是asp.net mvc,我写了一个csv文件。

我想做的是让jquery/javascript提交表单,而不是表单提交按钮。

例如,我创建了一个链接,并使用jquery附加了一个处理程序来提交表单:

$(function() {
    $("#mylink").click(function() {
        $("form").submit();
        return false;
    });
});

我还尝试序列化表单,并用相同的结果编写一篇ajax文章。

我得到的结果是请求/响应按原样发生,但我没有得到文件下载(保存文件)对话框。例如,我可以使用fiddler来验证响应。

就好像反应发生在带外或者别的什么地方,如果你愿意的话,在一个平行的线上,没有人在门口。

有人能发光吗? 谢谢

更新 不知为什么, $("form").submit() 不起作用,但我可以进行验证和预处理,然后返回true,这是有效的。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/41088
 
1220 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Quentin
Reply   •   1 楼
Quentin    15 年前

如果对表单调用submit方法,则这与单击普通的submit按钮完全相同。

使用XHR会失败(因为文件将由XHR而不是普通的浏览器响应处理程序处理),但是.submit()应该可以工作。

听起来你只是没有把 content-disposition 头,使浏览器将数据视为附件而不是内联文档。