【发布时间】:2011-10-30 12:27:27
【问题描述】:
我有一个包含值下拉列表和提交按钮的表单。
目前,当您单击提交按钮时,会调用存储过程,然后应用程序生成一个 url,然后 ActionResult 是重定向到新窗口。 url 基于下拉列表中当前选择的值。
我们的客户想要另一个按钮,当点击它时,基本上会做同样的事情,但下拉列表中的所有值。 基本上,点击时会打开多个窗口,每个窗口的 url 都基于下拉列表中的值。
我刚开始使用 MVC,研究让我更加困惑。我希望有人能指出我正确的方向。 我应该通过javascript中的某种循环来处理这个吗?如何?可以举几个例子吗?
ASPX 部分:
<div id="MyContainer" class="select-report">
<%
using (Html.BeginForm(MyManager.Query.Actions.GenerateReport(null), FormMethod.Post, new{target="_blank"}))
{%>
<select name="SearchText" class="my-values-select">
<% foreach (var cc in Model.MyCentresList)
{%>
<option value="<%=Html.Encode(cc.Name) %>">
<%=Html.Encode(cc.Name) %></option>
<% } %>
</select>
<input type="hidden" name="SearchType" value="MyCentre" />
<input type="submit" value="Generate" name="EntityName" />
<% } %>
</div>
代码隐藏:
public virtual ActionResult GenerateReport(GenerateReportOperation operation)
{
string entityName = operation.SearchText;
int entityType = (int)operation.SearchType;
string requestID1 = <code here that calls a stored procedure, a value is returned>;
string requestID2 = <code here that calls a stored procedure, a value is returned>;
string urlString = <code here that contructs the URL based on the values of entityName, entityType, requestID1, requestID2>;
return Redirect(urlString);
}
【问题讨论】:
标签: asp.net asp.net-mvc