MVC 中的 Jquery ajax 调用

发布于 2024-10-16 20:15:52 字数 208 浏览 3 评论 0原文

我使用一个自制的框架...我想用 jquery 进行 ajax 调用,但我不知道如何传递 url...我的意思是如果我有控制器“类别”和操作“索引”ajax 调用会是这样吗?

$.ajax({
    type: "POST",
    url: "http://localhost/learning/categories/index/",

});

I work with a self made framework...I want to make an ajax call with jquery and I don't know how to pass the url...I mean if i have controller "categories" and action "index" the ajax call would be like this?

$.ajax({
    type: "POST",
    url: "http://localhost/learning/categories/index/",

});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

时光病人 2024-10-23 20:15:52

这个怎么样?

var controller = "categories";
var action = "index";
var myURL = "http://localhost/learning/" + controller + "/" + action + "/";

$.ajax({
    type: "POST",
    url: myURL 
});

How about this?

var controller = "categories";
var action = "index";
var myURL = "http://localhost/learning/" + controller + "/" + action + "/";

$.ajax({
    type: "POST",
    url: myURL 
});
绝對不後悔。 2024-10-23 20:15:52

您的 JavaScript 是否位于 ASP.NET MVC 视图中?如果是这样,您可以使用 Url.Action 动态生成 URL。

$.ajax({
  type: "POST",
  url: '<%: Url.Action("index", "categories")%>',
});

如果您的 JavaScript 位于单独的 .js 文件中,那么您就增加了一点复杂性。

我的解决方案是动态渲染 .js 文件(即,将 script.js 路由到返回内容类型为 text/javascript 的视图的操作方法)。

我还尝试将 URL 从渲染视图传递到 .js 文件,但这似乎比上面的解决方案更混乱。

在周二的 MVC Conf 中,建议您避免同时支持相对和绝对 URL - 这样您就可以对基本 URL 做出假设。这也有效...

Is your JavaScript in an ASP.NET MVC view? If so, you can use Url.Action to generate the URL on the fly.

$.ajax({
  type: "POST",
  url: '<%: Url.Action("index", "categories")%>',
});

If your JavaScript is in a separate .js file, then you've added a bit more complexity.

My solution was to render the .js file dynamically (i.e. route scripts.js to an action method that returns a view with a contenttype of text/javascript).

I've also tried passing the URL from the rendered view to the .js file but this seemed messier than the above solution.

In MVC Conf on Tuesday, it was suggested that you simply avoid supporting both relative and absolute URLs - thus you could make assumptions about the base URL. That works too...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文