我正在 ASP.NET MVC 中使用一个概念验证应用程序,并且在使用 jQuery 时有一个关于路由的查询。我的一个函数要求我调用 ~/jqdata/myFunction/,这一切都很好使用
$.get("/jqdata/myFunction/" + $(this).attr("name"), function(data) { alert (data); }
但是,我将无法控制应用程序部署到的虚拟目录。在 Site.Master 页面中,我可以在头部添加 runat="server"的样式和 js 文件的这种行为,以及指向“~/Styles/site.css”的链接,例如,但我不知道如何以确保 jQuery 调用正确的路径来获取其数据。
任何人都可以帮忙吗,即使这意味着因为我这样做而称我为白痴或遗漏了一些非常明显的东西?你看,我确实是一个 winform 人。 :)
谢谢 马克
最佳答案
您可以使用服务器端代码将网站的根设置为 JavaScript 中的变量,可能在您的母版页中,也可能只是在您需要它的 View 中:
var rootUrl = '<%= Html.ResolveUrl("~/")%>';
那么你的函数将类似于:
$.get(rootUrl + "jqdata/myFunction/" ...);
关于jquery - ASP.NET MVC 和 jQuery - 路由和脚本位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/840302/