MVC4 Unobtrusive AJAX BeginForm Internet Explorer DIV清空

时间:2014-08-08 22:36:47

标签: jquery asp.net-mvc asp.net-mvc-4 asp.net-ajax unobtrusive-ajax

我想知道是否有人可以帮助我。我试图在我的MVC 4应用程序中添加不显眼的AJAX。我在页面中添加了以下脚本。

<script src="/Scripts/jquery-1.8.2.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>

Unobtrusive AJAX库是NUGET包版本3.2.0

我有一个DIV,我试图通过AJAX更新,简化如下所示。

@using (Ajax.BeginForm("MyAction", "MyController", new AjaxOptions { UpdateTargetId="MainForm", HttpMethod = "POST" }))
                        {
<div id="MainForm">
<div style="padding-top:10px">
<input type="submit" style="width:100px" value="Search"/>
 </div>
</div>
}

然后我有一个控制器将部分视图返回到DIV。

    [HttpPost]
    public ActionResult MyAction(Models.WhateverModel MyModel)
    {

        return PartialView("MyPartialView");
    }

您点击了提交按钮,在Chrome和Firefox中这可以正常工作,div MainForm会更新我返回的部分视图的内容。

我在操作中设置了一个断点,当在IE8中运行时,到达服务器端操作代码,但MainForm DIV结束为空。

我在IE8中打开了脚本错误,但没有发生脚本错误。

我也尝试过切换到jQuery 1.11.1,但这没有帮助。

我一直在论坛中搜索,我找不到明显适合这个问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

经过两个小时的搜索后,我发现了一条帖子,建议确保所有HTML代码都正确对齐。

建议互联网浏览器不太能够处理错误形成的HTML。

使用firefox的HTML验证器插件检查我的页面后,我发现我的div标签不对齐。

我确定一切都在Internet Explorer中正常运行。

将此留在这里,因为它可以帮助其他有同样问题的人。