Ajax.BeginForm 在 Chrome/FF 中正确显示部分视图,但在 IE 中的新页面上
Posted
技术标签:
【中文标题】Ajax.BeginForm 在 Chrome/FF 中正确显示部分视图,但在 IE 中的新页面上【英文标题】:Ajax.BeginForm displaying partial view correctly in Chrome/FF but on new page in IE 【发布时间】:2015-11-09 13:29:54 【问题描述】:我之前回答过一个类似的问题,通过下载 Ajax unobtrusive 解决了这个问题,但是在我现在将我的网站发布到 IIS 之后,类似的事情现在再次发生。请参阅下面的 Ajax 表单代码:
@using (Ajax.BeginForm("SearchResults","Export", new AjaxOptions UpdateTargetId = "result", HttpMethod="POST"))
以及控制器代码:
[HttpPost]
public ActionResult SearchResults(string searchString, string docType)
return PartialView(db.ExportKofaxes.Where(x => x.DocumentNumber)
在 IE 中,返回的部分视图将在新页面中打开,但在 Chrome 和 FF 中,它会按预期显示在当前视图中。这是 MVC 项目的一部分,我复制了整个项目,包括 bin 文件夹和脚本,唯一让我认为这不是缺少任何 dll 或脚本的问题的事实是它适用于 Chrome 和 FF 但我我在我的 bin 文件夹中看不到 Ajax dll。当我跨项目复制到 IIS 时,是否还需要跨 nuget 包文件夹进行复制?
任何帮助表示赞赏。
【问题讨论】:
【参考方案1】:好吧,我非常愚蠢,我花了将近半天的时间研究为什么它在 IE 中无法运行并错过了一些愚蠢的东西,所有本地站点都设置为以兼容模式运行,我必须勾选在某些时候测试其他东西。这导致部分视图在新页面中打开。
【讨论】:
以上是关于Ajax.BeginForm 在 Chrome/FF 中正确显示部分视图,但在 IE 中的新页面上的主要内容,如果未能解决你的问题,请参考以下文章
在 Ajax.BeginForm 中传递 UpdateTargetId 不替换目标
提交我的 Ajax.BeginForm 的其他 jQuery 事件