0

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

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

Unobtrusive AJAX 库是 NUGET 包版本 3.2.0

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

@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,但这并没有帮助。

我一直在论坛中搜索,但找不到明显适合此问题的方法。

有任何想法吗?

4

1 回答 1

0

在又搜索了两个小时后,我发现了一篇建议确保所有 HTML 标记都正确对齐的帖子。

建议是 Internet Explorer 处理格式不正确的 HTML 的能力较差。

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

一旦我修复了一切都开始在 Internet Explorer 中正常工作。

将其留在这里,因为它可能会帮助遇到相同问题的其他人。

于 2014-08-11T16:50:25.707 回答