0

我在这里束手无策......我的表单有以下剃刀标记:

<input class="k-button" type="submit" value="Post" name="SubmitButton" />
<input class="k-button" type="submit" value="Save" name="SubmitButton" />

我遇到的问题是控制器操作方法的 FormCollection 参数在其键/值对中不包含 SubmitButton。

我在这里遇到了这个帖子,似乎也有同样的问题。解决方案似乎是使用 ActionMethodSelectorAttribute 并删除 [Remote] 验证的使用。但是我确实需要我的 [Remote] 验证器,所以我不能选择删除它。没有其他解决方案,或者这是我必须处理的一些错误?

我正在考虑必须用一个保存按钮替换我对两个按钮的使用,然后添加一个“发布”复选框。然后在控制器操作中检查是否存在 Post KeyValue 对。但这不是想法。我更喜欢使用两个按钮。

编辑:按照伊戈尔的要求查看更多标记:

@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>
}
4

1 回答 1

0

尝试:

<input type="hidden" name="SubmitButtonValue" id="SubmitButtonValue" />

<input class="k-button" type="submit" value="Post" name="SubmitButton" />
<input class="k-button" type="submit" value="Save" name="SubmitButton" />

<script type="text/javascript">
  $(document).ready(function(){
    $(".k-button").click(function(){
      $("#SubmitButtonValue").val($(this).val());
    });
  });
</script>

并检查"SubmitButtonValue"输入FormCollection

于 2013-03-28T14:19:08.557 回答