post 具有不同参数的多个按钮或链接

post multiple buttons or links with different arguments

我想 post 使用三个按钮和不同的参数,对于搜索按钮,传递了两个参数(fromDate 和 ToDate),但对于其他两个按钮,导出为 pdf 和 excel 三个参数是通过(从日期,到日期,格式)。我如何将第三个 'format' 参数传递给导出按钮。

 @using (Html.BeginForm("Summary", "Reports", FormMethod.Post, new { @class = "form-inline", style = "margin:20px 0 25px 0" }))
    {
        <div class="form-group">
          @Html.TextBox("FromDate", "", new { @class = "form-control", placeholder = "From Date" }) 
        </div>
        <div class="form-group">
           @Html.TextBox("ToDate", "", new { @class = "form-control", placeholder = "To Date" }) 
        </div>
        <button id="btnSubmit" type="submit" class="btn btn-default">Search</button>

        <button type="submit" id="exportPdf" >Export to PDF</button>
        <button type="submit" id="exportExcal" >Export to EXCEL</button>
    }

控制器方法:

 public ActionResult Summary(String FromDate, string ToDate, string format)
    {
 //my code         
}

P.S:我不想在这里使用jquery ajax。

谢谢。

您可以使用按钮名称来识别文件类型:

Html:

<button type="submit" id="btnSubmit" class="btn-default" name="format" value="TypeX">Search</button>
<button type="submit" id="exportPdf"  name="format" value="PDF">Export to PDF</button>
<button type="submit" id="exportExcal" name="format" value="EXCEL">Export to EXCEL</button>

控制器:

public ActionResult Summary(String FromDate, string ToDate, string format)
{
    if (format == "PDF")
       // do something
    else if (format == "EXCEL")
       // do something
    else
       // do something
}