【发布时间】:2015-09-21 14:19:35
【问题描述】:
所以,我有一个部分的看法,让我们说:
@model myModel
@{
Layout = null;
}
....
Html.BeginForm("action", "Controller", FormMethodPost)
.....
.....
.....
.....
<input type="submit" value = "Go"/>
}
在这个局部视图内部,我正在渲染第二个局部视图,所以这将是:
@model myModel
@{
Layout = null;
}
....
Html.BeginForm("action", "Controller", FormMethodPost)
.....
@{Html.RenderPartial("secondPartial");}
.....
.....
<input type="submit" value = "Go"/>
}
第二部分也提交了一个表单,但这次使用 Ajax,如下所示:
@model myModel
@{
Layout = null;
}
....
Ajax.BeginForm("secondAction", "sameController", new AjaxOption { HttpMethod = "POST", InsertionMode=InsertionMode.Replace, UpdateTargetID = "thisPartialDivId"})
.....
.....
.....
.....
<input type="submit" value = "Go"/>
}
但是现在,每次我提交第二个部分时,它都会提交它的父级,其余字段为空,甚至我是否专门告诉它要提交哪个操作只是上升到它的父级并提交。
有什么想法吗?谢谢 :)
附:原因:第二个视图为属性提交了一个新值,然后它应该将该值添加到父视图的下拉列表中。父级创建对象。
Kinda 通过添加 AntiForgeryToken 解决了这个问题,但后来我又遇到了另一个错误,因为我在该父视图中有 3 个(父视图上有一个,每个部分有 1 个)。仍然在这里寻找解决方案。 :)
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-partialview