Ajax发布表单和下载文件作为响应

问题描述 投票:0回答:1

以下javascript用于提交要处理的webform,并返回错误或成功返回文件。下面的脚本是成功发布表单但是如何更改脚本以下载文件或显示响应。

请注意我收到的文件,但是没有下载,文件内容显示在console.log上

码:

    $("#myform").submit(function(event) {

        /* stop form from submitting normally */
        event.preventDefault();

        /* get some values from elements on the page: */
        var $form = $(this),
            term = "tesr",
            url = $form.attr('action');

        var data = $('#myform').serialize();
        /* Send the data using post */
        //var posting = $.post(url, data, function(response) { console.log("1"); });

        $.ajax({
            type: "post",
            url: url,
            data: data,
            contentType: "application/x-www-form-urlencoded",
            success: function(responseData, textStatus, jqXHR) {
                alert("data saved")
            },
            error: function(jqXHR, textStatus, errorThrown) {
            console.log(jqXHR); 
console.log(errorThrown);
            }
        })


    });

    <form name="myform" id="myform" onsubmit="return validateForm()" method="post" action="/audit_submit"> 
    <input type="submit" id="generate-string"  value="Ok">
    <div id="result">test</div>

*更新:

似乎Ajax在错误函数中接收文件

这是console.log(jqXHR)的打印输出;

{readyState:4,getResponseHeader:ƒ,getAllResponseHeaders:ƒ,setRequestHeader:ƒ,overrideMimeType:ƒ,...}

这是一个打印出来的responsedata enter image description here

javascript ajax forms download
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.