MVC中的Jquery ajax调用
问题描述:
我使用自制的框架...我想用jQuery做一个ajax调用,我不知道如何传递url ...我的意思是如果我有控制器“类别”和行动“索引”的Ajax调用会是这样的?MVC中的Jquery ajax调用
$.ajax({
type: "POST",
url: "http://localhost/learning/categories/index/",
});
答
这个怎么样?
var controller = "categories";
var action = "index";
var myURL = "http://localhost/learning/" + controller + "/" + action + "/";
$.ajax({
type: "POST",
url: myURL
});
答
您的JavaScript是否在ASP.NET MVC视图中?如果是这样,您可以使用Url.Action来即时生成URL。
$.ajax({
type: "POST",
url: '<%: Url.Action("index", "categories")%>',
});
如果你的JavaScript是在一个单独的.js文件中,那么你增加了一点复杂性。
我的解决方案是动态呈现.js文件(即,将scripts.js路由到返回带有contentType文本/ javascript的视图的操作方法)。
我也试着将呈现视图的URL传递给.js文件,但这看起来比上面的解决方案更混乱。
在周二的MVC Conf中,有人建议您避免支持相对和绝对URL - 因此您可以对基本URL进行假设。这也有效...
抱歉不提及框架是用PHP编写的,任何有关ajax调用mvc的文档都会很棒! – aephixus 2011-02-10 17:26:55