【发布时间】:2012-05-21 06:14:31
【问题描述】:
我有一个 ASP .NET MVC 3 项目,但我的“创建”视图之一存在问题。
我有使用 ajax 表单实现的级联下拉字段。
视图大致上是这样的:
@using (Html.BeginForm(...))
{
@Html.MyDropDown1
using (Ajax.BeginForm(...))
{
@Ajax.MyDropdown2
<input type="submit" value="Select" />
}
using (Ajax.BeginForm(...))
{
@Ajax.MyDropdown3
<input type="submit" value="Select" />
}
<!-- other form fields -->
<input type="submit" value="Create" />
}
问题是ajax表单内的提交按钮实际上是提交外部html表单。
有没有办法指定我要提交的表单的名称?
我考虑将我的 ajax 表单放在我的 html 表单上方,这样就不会有任何嵌套 - 但我需要在我的 html 帖子中下拉所选项目的值。
谢谢, 皮特
【问题讨论】:
-
HTML
<form>s 不能嵌套。 -
基本上您正在创建无效的 HTML。您需要重新设计您正在尝试做的事情。
-
@Rudie 我猜有人可能会投反对票,因为嵌套 html 表显示“缺乏研究工作”。 (我没有对此投反对票,但这种疏忽也不会得到我的支持。
-
@Pete 对于 ajax,您根本不需要
form元素。您可以从常规表单字段中提取数据并使用 ajax 调用提交。诚然,在使用那些 ajax helpera 时你不能这样做,但无论如何你不能像现在这样使用它们。 -
我在发布之前进行了研究 - 但我只找到了有关将多个提交按钮用于 1 个表单中的不同操作的帮助。
标签: ajax asp.net-mvc-3 form-submit nested-forms