MVC3 非顺序隐藏输入索引是否需要放在第一位?

发布于 2024-11-29 03:44:12 字数 444 浏览 4 评论 0原文

用于模型绑定的 MVC3 非顺序索引隐藏输入。

<input type="hidden" name="Index" value="whatever" />

它们是否位于要发布的其他相关输入之前、之后、中间,这是否重要?
它们最终出现在发布的数据中的位置重要吗?
例如,它们可以全部集中在一起并且仍然有效吗?

<input type="text" name="[A].Id" value="1" />
<input type="text" name="[B].Id" value="2" />
<input type="hidden" name="Index" value="A" />
<input type="hidden" name="Index" value="B" />

MVC3 non-sequential index hidden inputs for model binding..

<input type="hidden" name="Index" value="whatever" />

Does it matter if they go before, after, in the middle of the other related inputs to be posted?
Does it matter at all where they end up in the posted data?
For example, can they all be lumped together and it still works?

<input type="text" name="[A].Id" value="1" />
<input type="text" name="[B].Id" value="2" />
<input type="hidden" name="Index" value="A" />
<input type="hidden" name="Index" value="B" />

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风追烟花雨 2024-12-06 03:44:12

不,表单字段的顺序并不重要,它们在 html 页面上的显示位置也不重要。
MVC3 最重要的因素是字段名称必须与控制器/操作参数的名称匹配。

但是,如果您有两个同名字段,则只有一个值将返回到您的操作中。

No, the order of your form fields does not matter, nore where they appear on the html page.
The most important factor for MVC3 is the name of the fields must match to the name of your controller/action parameter.

If you have two fields with the same name however, only one value will be returned into your action.

早乙女 2024-12-06 03:44:12

只要隐藏字段位于表单内部,它们的放置顺序就无关紧要。请参阅下面的代码示例。请注意隐藏字段如何放置在表单内的任何位置。

@using (Html.BeginForm())
{
    @Html.ValidationSummary(false, "Please correct the following errors")

    @Html.HiddenFor(m => m.CoolStuffId)


    @Html.Partial("_EditCoolStuff", Model)

    <fieldset class="ui-grid-a">
        <div class="ui-block-a"><a data-role="button" href="@Url.Action("ActionPlan", "Store", new { id = Model.StoreID })">Cancel</a></div> 
        <div class="ui-block-b"><button type="submit" data-theme="a">Submit</button></div> 
    </fieldset> 
     @Html.HiddenFor(m => m.TypeId)
}

As long as the hidden fields are located inside of the form it should not matter the order in which they are placed. Please see code sample below. Notice how the hidden fields are put anywhere inside of the form.

@using (Html.BeginForm())
{
    @Html.ValidationSummary(false, "Please correct the following errors")

    @Html.HiddenFor(m => m.CoolStuffId)


    @Html.Partial("_EditCoolStuff", Model)

    <fieldset class="ui-grid-a">
        <div class="ui-block-a"><a data-role="button" href="@Url.Action("ActionPlan", "Store", new { id = Model.StoreID })">Cancel</a></div> 
        <div class="ui-block-b"><button type="submit" data-theme="a">Submit</button></div> 
    </fieldset> 
     @Html.HiddenFor(m => m.TypeId)
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文