0

我有多个按钮来执行不同的收据报告操作。打印按钮会提示用户下载选项。视图代码如下:

@using (Html.BeginForm())
{ 

<fieldset style="width:525px; padding-top:20px; margin:0 auto;">
    <legend>Select Criteria</legend>

        <center>
            @Html.Partial("_MagazineType")<br /><br />
        </center>

            @Html.Partial("_RadioBtnCriteria")

            @Html.Partial("_ReportExportFormat")<br />  

        <center>                 
            <button type= "submit" id = "status" onclick="ReceiptsStatus();" >Receipts Status Details</button>
            <button type= "submit" id = "duplicate" onclick="NoDuplicate();" >No Duplicate</button>
            <button type= "submit" id = "pr_rcpt" onclick="PrintReceipts()">Print Receipts</button>                         
        </center>          

</fieldset><br />

} 

现在,当单击 Receipt status detail 按钮时,它再次提示下载选项,因为使用了 @using (Html.BeginForm()) 选项。但我只想让控制器动作让它运行。此外,根据输入的参数,它必须在要调用的不同操作中进行选择。那么如何仅与参数一起运行该按钮的特定方法。说日期范围必须从日期开始,并且只能从日期开始。

4

1 回答 1

0

在我看来,在同一个视图上有多个按钮调用不同操作方法的最简单方法是用每个按钮包围@using (HTML.BeginForm(“actionName”, “controllerName”)),然后你不需要你只需要的 onClick 事件,每个按钮的每个回发都会将你定向到指定的 actionName控制器名称。

这个例子修改了 ASP.Net 网站上的电影教程:

<div style="width:100px; float:left" >
    @using (Html.BeginForm())
    {
    <p>
    <input type="submit" value="Delete" /> 
    @Html.ActionLink("Back to List", "Index")
    </p>
    }
    </div>

    <div style="width:100px; float:left">       
    @using (Html.BeginForm("Index","Movies"))
    {
    <p>
    <input type="submit" value="Cancel" /> 
    </p>
    }
</div>

希望有帮助

于 2013-01-09T11:34:43.287 回答