我有多个按钮可以对收据报告执行不同的操作。打印按钮确实提示用户下载选项。该视图的代码如下:
@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())选项。但我只想要控制器动作才能运行。同样取决于输入的参数,它必须在要调用的不同动作中进行选择。那么如何只运行该按钮的特定方法和参数。比如说日期范围必须从和过去,并且只能从日期开始传递。
答案 0 :(得分:0)
在同一个视图中调用不同操作方法的多个按钮的最简单方法是用@using (HTML.BeginForm(“actionName”, “controllerName”))
围绕每个按钮然后你不需要你只需要的onClick事件,每个按钮的每个回发都将引导您到指定的controllerName中指定的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>
希望有所帮助