【发布时间】:2019-06-19 21:52:11
【问题描述】:
我知道类似的问题已被多次询问和回答;对于我的一生,我无法确定我错过了什么,请多多包涵。
我正在尝试使用编辑器为页面上的项目加载部分视图,并将该编辑器显示为引导模式,但它总是加载到新页面。
_Layout.cshtml 引用了 jQuery 包:
@Scripts.Render("~/bundles/jquery")
`BundleConfig.RegisterBundles() 添加 jQuery 和不显眼的 ajax:
bundles.Add(new ScriptBundle("~/bundles/jquery")
.Include("~/Scripts/jquery-{version}.min.js") // <-- must come first
.Include("~/Scripts/jquery.unobtrusive-ajax.min"));
Scripts 文件夹包含这两个文件:
View 有一个空的div 和正确的id 来接收内容
<div id="editor"></div>
我因此构造了ActionLink:
@Ajax.ActionLink(linkText: "Edit",
actionName: "GetEditor",
routeValues: new {id = Model.Id},
ajaxOptions: new AjaxOptions
{
OnSuccess = "showEditor",
UpdateTargetId = "editor",
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST"
})
我的 JS 函数只是显示模态:
function showEditor() { $("#editor").modal("show"); };
...为了看看我能不能让它工作,我从我的控制器返回一个简单的字符串:
public ActionResult GetEditor(string id) => Content("Success");
编辑 1
在我的 web.config 中,我启用了客户端验证和不显眼的 js:
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
编辑 2
我尝试在不使用缓存 (Ctrl+F5) 的情况下进行刷新,结果相同,并且开发工具未显示任何 JavaScript 错误。我在所有浏览器中都得到了相同的结果。
我忘记了什么?
【问题讨论】:
标签: javascript jquery asp.net-mvc-5 actionlink html.actionlink