提交表单后将文件发送给用户

时间:2015-02-14 19:02:27

标签: jquery ajax forms

我需要在用户点击提交表单按钮后立即向用户发送pdf文件。插件使用Ajax发送表单,因此页面不刷新。 我没有编程方面的高级知识,而且我现在找不到正确的解决方案。 我认为我可以创建链接,同时点击和文件将开始下载。但我不知道如何做到这一点的正确方法。 我认为我能做的是:

$('form input[type="submit"]').click(function(){
$('form input[type="submit"]').after('<a href="http://www.mywebsite.ru/bitrix/myfile.pdf" class="download-file"></a>');
$('.download-file').click();
})

但是我不会这样做,并且在表单提交之后通过这种方式向用户发送文件是真实的方式。所以我需要一些机构来解释,可能是一些例子,在表单提交后将文件发送给用户的最简单方法是什么。 另外我对jQuery有一些了解,但我的Ajax知识非常糟糕:(

1 个答案:

答案 0 :(得分:1)

我会在提交数据验证后从服务器返回PDF网址。因此,您可以使用可视反馈用户处理此URL并执行下载,以解释文件正在下载的原因。

$(function(){
    $.ajax({
       url : 'server.php',
       type : 'POST',
       data: {field1: 1, field2: 2},
       success : function(html, statut){
           //Visual user feedback
           alert('A PDF file will be automatically downloaded');

           //Download file
           window.location.href = html;
       }
       error : function(result, statut, error){
           alert('something wrong just happened!');
       }
    });
});

您还可以通过更好的建议替换window.location.href = html;Download File Using Javascript/jQuery