我有一个(简单的)ASP MVC视图:
<div class="row">
<div id="dashboard-left" class="col-md-8">
@using (Html.BeginForm("ConfigureOffers", "Offers", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
<div style="padding-bottom: 10px;">
<p style="font-size: large;"><strong>Available</strong></p>
</div>
<div class="accordion" id="accordion2">
<div class="widget" style="background:#fff !important">
@{
int i = 0;
}
@foreach (var prod in Model.allProducts)
{
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="accordion2" href="#collapse@(i)">
<h4 class="widgettitle" id="QuickTitle">> @prod.Description_VC</h4>
</a>
</div>
<div id="collapse@(i)" class="accordion-body collapse" style="height: 0px;">
<div class="accordion-inner" style="margin-left: 10px;">
<div style="padding-bottom: 10px;"><strong>Total product:</strong> @{
for (int k = 0; k < Model.OfferHeaders.Count(); k++)
{
if (Model.OfferHeaders[k].Product_ID == prod.Product_ID)
{
@Html.TextBoxFor(o => o.OfferHeaders[k].Amount_DEC);
break;
}
}
}
</div> @*prod div*@
</div> @*accordion-inner*@
@{i++;}
</div>
<div style="clear:both;"></div>
</div>
}
<input type="submit" class="btn btn-default" value="Save Changes" />
</div> @*widget*@
</div> @*accordion*@
}
</div>
<!-- col-md-4 -->
</div>
<!--row-->
此视图的基础来自另一个(工作页面),但由于某种原因,单击“提交”按钮不会触发BeginForm
元素中详细说明的服务器操作。我没有从Visual Studio中获得任何错误,也没有从浏览器控制台获得任何JavaScript错误,并且似乎没有任何事情发生在服务器端。
答案 0 :(得分:0)
行动未发生的一个可能原因主要是你放的时候
视图中的操作也创建了页面。但我想你
忘了提到控制器中的ActionResult
。
另一种可能的选择是你必须使用[HttpPost]
控制器中指定ActionResult
的方法
[HttpPost] public ActionResult ConfigureOffers(ModelClass instance) { ... }
答案 1 :(得分:0)
其他可能的原因