Привет У меня есть Лил JQuery скриптJQuery скрипт в MVC макете не работает
$(document).ready(function() {
$.ajax({
url: '@Url.Action("AjaxTest", "Home")',
})
});
Когда я включаю его непосредственно на страницу макета моего приложения MVC это работает, как я ожидал. Когда я пытаюсь вызвать его из внешнего файла (infoAjax.js), он терпит неудачу, и я получаю сообщение: Не удалось загрузить ресурс: сервер ответил статусом 404 (Not Found). Мой пакет файл:
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/bootstrap.js",
"~/Scripts/respond.js",
"~/Scripts/infoAjax.js"
));
и ответственная часть страницы макета:
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)
@ Url.Action не будет работать в файле JS. Это синтаксис Razor, поэтому он должен быть в представлении. Если вы посмотрите на свою вкладку в сети, когда вы запустите ее из внешнего файла, вы, вероятно, обнаружите, что она пытается вызвать URL-адрес буквально, например http: //@Url.Action («AjaxTest», «Home») вместо того, чтобы разрешать его реальный URL-адрес, который он будет делать, если он был в файле cshtml. – ADyson