0

現在、このマークアップには 2 つのリンクがあり、両方を AJAX 経由で呼び出そうとしています。

使用した開始日と終了日に基づいてクエリを実行する検索があり、開始日と終了日を使用して Excel ドキュメントをダウンロードしようとしている Excel へのエクスポート リンクがあります。

#export $.ajaxExcel ドキュメントをダウンロードするための呼び出しを取得することを除いて、すべて正常に動作します。

jQuery で Excel ドキュメントをダウンロードするにはどうすればよいですか?

<a href="#" class="buttonH bBlue" id="export">Export to Excel</a>
<a href="#" class="buttonH bBlue" id="search">Search</a>
<div class="headInput" id="reportsDateSearch">
    <input type="text" name="start_date" placeholder="<%= @end_date %>" class="datepicker" id="endDate" />
    <input type="text" name="end_date" placeholder="<%= @start_date %>" class="datepicker" id="startDate" />            
</div>

jQuery AJAX 呼び出し:

// This call gets the data based on the start and end date used
    $('#search').on('click', function() {
        $.ajax({
            type: "GET",
            beforeSend: function(xhr) { 
                xhr.setRequestHeader("Accept", "text/javascript");
            },
            url: '<%= reports_affirmative_action_path %>',
            data: {start_date: $('#startDate').val(), end_date: $('#endDate').val()}
        }, null, 'script');
    });


// This call gets the data based on the start and end date used, but i'm trying to get it to return the xlsx format.
    $('#export').on('click', function() {
        $.ajax({
                type: "GET",
                beforeSend: function(xhr) { 
                    xhr.setRequestHeader("Accept", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
                },
                url: '<%= reports_affirmative_action_path(:format => :xlsx) %>',
                data: {start_date: $('#startDate').val(), end_date: $('#endDate').val()}
        }, null, 'script');
    });
4

1 に答える 1