我有视图看起来像这样:ASP .NET MVC,在IE中未知的运行时错误(嵌套形式)
<% using (Ajax.BeginForm(new AjaxOptions { UpdateTargetId = "someDiv", HttpMethod = "Post"))
{%>
<%= Ajax.ActionLink("Add new", "AddNewItem", new AjaxOptions { UpdateTargetId = "divAddNewItem", HttpMethod = "Get" })%>
<div id="divAddNewItem">
</div>
<input type="submit" value="Create" />
<% } %>
“AddNewItem”动作返回局部视图,其呈现给divAddNewItem,AddNewItem视图代码看起来像这样的:在这种情况下
<% using (Ajax.BeginForm(new AjaxOptions { UpdateTargetId = "divAddNewItem", HttpMethod = "Post"))
{%>
<input type="submit" value="Add" />
<% } %>
,之后点击“新增”按钮,IE会给出异常(未知的运行时错误),而Chrome和Firefox会工作。 我做了一些研究,似乎嵌套窗体标签导致问题。
很高兴听到任何可能的提示或建议来解决这个问题。
谢谢!
所以,可能的解决方案之一是删除嵌套表单,并用Ajax.ActionLink替换提交按钮? – shkipper 2009-12-15 14:32:34
或者只是取消嵌套表单。你可以有*多个*表格;他们只是不能嵌套。 – 2009-12-15 14:47:11
嗨。感谢您的回复。如果我将它们嵌套,会有一些设计问题:)。如果我使用actionlink(或jQuery),我需要将所有数据手动传递给动作? (即新{id = textbox1.value,name = textbox2.value}? – shkipper 2009-12-15 14:56:21