我已经无计可施了。。。我的表单有以下剃刀标记:
<input class="k-button" type="submit" value="Post" name="SubmitButton" />
<input class="k-button" type="submit" value="Save" name="SubmitButton" />
我遇到的问题是,控制器操作方法的FormCollection参数在其键/值对中不包括SubmitButton。
我偶然发现了这个帖子
here
这似乎也有同样的问题。解决方案似乎是使用ActionMethodSelectorAttribute AND来删除[Remote]验证的使用。但我确实需要我的[远程]验证器,所以我不能删除它。是否没有其他解决方案,或者这是我必须处理的某个bug?
我正在考虑将两个按钮的使用替换为一个Save按钮,然后添加一个“Post”复选框。然后在控制器操作中,我检查Post KeyValue对是否存在。但这还不够理想。我更喜欢用两个按钮。
编辑:Igor请求后的更多视图标记:
@using (Html.BeginForm())
{
@Html.ValidationSummary(false)
<fieldset>
<legend>Edit details for Client Warehouse Request </legend>
@Html.HiddenFor(model => model.ModelObject.CustomerCode)
@Html.HiddenFor(model => model.ModelObject.ReqNr)
<div style="table-layout: initial;">
<div class="columnDivider">
<div class="editor-label">
@Html.LabelFor(model => model.ModelObject.ReqNr)
</div>
<div class="editor-field">
@Html.DisplayFor(model => model.ModelObject.ReqNr)
</div>
<div class="clear">
</div>
<div class="editor-label">
@Html.LabelFor(model => model.ModelObject.CreationDate)
</div>
... many other fields following the above structure...
<input class="k-button" type="submit" value="Post" name="SubmitButton" />
<input class="k-button" type="submit" value="Save" name="SubmitButton" />
</div>
<div class="columnDivider">
...some more fields
</div>
<div>
Here I have a Kendo UI datagrid that gets submitted with the form
</div>
</fieldset>
}