栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

对MVC控制器的Ajax调用返回“找不到”

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

对MVC控制器的Ajax调用返回“找不到”

始终使用

Url.Action
Url.RouteUrl
html
helper方法来构建操作方法的url。无论您当前的页面/路径如何,它都会正确构建网址。

假设您的js代码在razor视图中,则可以直接使用

Url.Actio
n方法并将其分配给js变量。

url: "@Url.Action("gravacookie","entidades")",

假设您有这样的操作方法,它应该可以工作

[HttpPost]public ActionResult gravacookie(string id,string detalhe){  // to do : Return something}

如果您的Javascript位于单独的javascript文件中,则可以使用上述帮助方法在razor视图中构建url,并将其保存在您的外部js文件代码可以访问的变量中。
一定要确保使用javascript名称空间,以避免全局javascript变量可能出现的问题

@section scripts{ <script>    var myApp = myApp || {};    myApp.Urls = myApp.Urls || {};    myApp.Urls.baseUrl = '@Url.Content("~")';    myApp.Urls.gravacookieUrl = '@Url.Action("gravacookie","entidades")'; </script> <script src="~/scripts/PageSpecificExternalJsFile.js"></script>}

PageSpecificExternalJsFile.js
文件中,您可以像

var urlToGrava= myApp.Urls.gravacookieUrl// Or With the base url, you may safely add the remaining url route.var urlToGrava2= myApp.Urls.baseUrl+"entidades/gravacookie";// Use urlToGrava now

编辑

如果您只关心站点的根/基URL,则可以简单地

/
用作URL的第一个字符。

var urlToGrava2= "/entidades/gravacookie";


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/386135.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号