代码之家  ›  专栏  ›  技术社区  ›  rism

超级简单Ajax.ActionLink这个例子在IE中不起作用,但在Firefox,Chrome,Safari中起作用。

  •  2
  • rism  · 技术社区  · 14 年前

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace MvcApplication1.Controllers
    {
        public class TestController : Controller
        {
            public ActionResult Test()
            {
                return View();
            }
    
            public string AjaxTest()
            {
                return "Some random text";
            }
    
        }
    }
    

    我有以下看法:

    <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
    <html>
    <head runat="server">
        <title>Test</title>
          <script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
    
        <script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
    </head>
    <body>
      <%= Ajax.ActionLink("Ajax Test", "AjaxTest", new AjaxOptions{UpdateTargetId="testtarget" }) %>
      <div id="testtarget">Test Div</div>
    </body>
    </html>
    

    3 回复  |  直到 11 年前
        1
  •  1
  •   Community Romance    7 年前

    如果您使用的是MVC3,请检查一下,在遵循下面的建议之后,我遇到了同样的问题,现在正在工作,但是我发现Ajax ActionLink正在缓存请求,但这是另一个问题

    Ajax.ActionLink not working, Response.IsAjaxRequest() is always false

        2
  •  1
  •   Team-JoKi    12 年前

    IE缓存你的“最爱”页面(显然是出于性能原因),但当你清除浏览器历史记录时,默认情况下不会删除它们。

    您需要转到“internet选项”,单击“删除”(在“历史记录”下),然后取消选中“保留收藏的网站数据”。

    我和一个常客也有同样的问题ASP.Net网站,当我按下“后退”或刷新页面时,IE将获取我的网站的旧版本。。

    不管怎样,希望这有帮助!

        3
  •  0
  •   LukLed    14 年前

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    

    没有它,你可能会有一些问题,但它仍然适用于我与它和没有。可能有某种缓存问题?Ctrl+F5,然后重试。