淘汰并下载csv / pdf

时间:2014-01-20 02:36:33

标签: ajax asp.net-mvc pdf csv knockout.js

我正在使用ASP.NET MVC和淘汰赛。 我有一张收集信息的表格。

表单中的最后一个字段是输出类型: 可以是HTML / CSV / PDF。

我很难将结果输出为CSV或PDF。 作为淘汰赛提交表格使用ajax和ajax无法保存 结果为CSV或PDF。

如果您有任何想法,请告诉我。 感谢。

2 个答案:

答案 0 :(得分:1)

你不能使用knockout来创建pdf。通过ajax将数据发布到服务器,并使asp.net从服务器通过C#创建pdf,一旦创建了pdf,就可以下载了。

答案 1 :(得分:1)

使用表单将数据参数发布到服务器。

如果你需要使用KO Observables或js变量的参数,你可以使用像这样的js函数将它们附加到表单:

 function downloadFile(idForm, parameters) {

            var id = '#' + idForm;

            $(id).submit(function () { //listen for submit event
                $(id + ' input').empty().remove();
                $.each(parameters, function (i, item) {
                    $('<input />').attr('type', 'hidden')
                        .attr('name', item.name)
                        .attr('value', item.value)
                        .appendTo(id);
                });

                return true;
            });

            $(id).submit();
        };

您可以传递一个额外的参数,指示您是否要下载HTML,CSV或PDF文件。