Изменить изображение с помощью URL-адреса и параметров - PullRequest
0 голосов
/ 02 апреля 2019

У меня есть диаграмма, которая генерирует изображение в виде:

<td>
            <b>Average Meetings By Day Of Week</b><br />
            <img id="imgAvgMeets" src='@Url.Action("GetAvgMeetingsByDayofWeek", "Meeting")' alt="" height="400" width="400" />
        </td>

Действие контроллера:

[HttpGet]
    public ActionResult GetAvgMeetingsByDayofWeek()
    {
        List<TextValuePair> pairs = DataRepository.GetAvgMeetingsByDayofWeek();
        var chart = new System.Web.UI.DataVisualization.Charting.Chart();
        chart.Width = 300;
        chart.Height = 300;
        chart.Series.Add(CreateSeries(System.Web.UI.DataVisualization.Charting.SeriesChartType.Bar, pairs));
        chart.ChartAreas.Add(CreateChartArea());
        System.IO.MemoryStream ms = new System.IO.MemoryStream();
        chart.SaveImage(ms);
        return File(ms.GetBuffer(), "image/img");
    }

Это работает нормально, но я пытаюсь найти способ изменить диапазон дат с вызовом примерно так:

<td>
            <b>Average Meetings By Day Of Week</b><br />
            <img id="imgAvgMeets" src='@Url.Action("GetAvgMeetingsByDayofWeek", "Meeting", new { startdate = Model.ChartStartDate, enddate = Model.ChartEndDate })' alt="" height="400" width="400" />
        </td>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td>
            <table>
                <tr>
                    <td>Start Date:</td>
                    <td>End Date:</td>
                    <td>Recalc</td>
                </tr>
                <tr>
                    <td><input id="txtStartDate" style="width:50px" /></td>
                    <td><input id="txtEndDate" style="width:50px" /></td>
                    <td><button id="btnRecal" type="button" class="displaybutton" onclick="return Recalc();"></button></td>
                </tr>
            </table>
        </td>
    </tr> 

Я могу достаточно легко изменить вызов базы данных. Но как мне повторно вызвать действие с изменениями параметров? Я могу использовать средство выбора даты, чтобы изменить диапазон дат:

$ ( "# txtStartDate"). DatePicker ({ changeMonth: true, changeYear: правда, yearRange: "-0: +1", maxDate: '+ 1y', модальный: ложь, autoClose: правда, onSelect: function () { $ ( "# TxtEndDate") фокус (). } });

    $("#txtEndDate").datepicker({
        changeMonth: true,
        changeYear: true,
        yearRange: "-1:0",
        maxDate: '+1y',
        modal: false,
        autoClose: true,
        onSelect: function () {
            $("#btnRecal").focus();
        }
    });

Но тогда как мне включить это в новый вызов контроллера и поместить новое изображение в тег>> 1015 *

...