2012-05-20 44 views
7

我有一个ASP .NET MVC 3项目,并且存在我的“创建”视图之一的问题。ASP .NET MVC 3 - 如何提交嵌套在html表单中的ajax表单

我有层叠下拉字段,我用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文章中下拉选择的项目的值。

感谢, 皮特

+4

HTML'

'不能嵌套。 – SLaks

+1

基本上你正在创建无效的HTML。你需要重新设计你想要做的事情。 –

+0

@Rudie我的猜测可能会有人可能downvote,因为嵌套的HTML表格显示“缺乏研究工作”。 (我还没有投票支持这个,但是这种监督也不会对我产生积极影响 –

回答

7

正如在评论中指出,你不能有嵌套形式。删除所有using (Ajax.BeginForm(...))位,并通过jQuery(或其他)处理你的ajax调用。

+0

了解,谢谢。 – PeteGO