我发现ASP.Net PageMethods非常方便易用,但我刚开始使用MVC开发并且不确定如何使用它们?
MVC中PageMethods.MyFunction()
的等价物是什么,其中MyFunction是一个Controller动作?
我知道我可以使用Json
函数返回一个值,但是如何从客户端调用该操作?
答案 0 :(得分:7)
我知道我可以使用Json功能 返回一个值,但我怎么称呼 来自客户的行动?
我认为您正在寻找getJSON
$.getJSON("/controller/action", function(json)
{
alert("JSON Data: " + json.users[3].name);
});
或ajax jQuery方法。
可以非常轻松地调用操作并从ASP.NET MVC返回JSON数据。
答案 1 :(得分:2)
我认为你不需要页面方法。 asp.net中的页面方法是一种将页面类中的方法公开给客户端代码的方法。
在MVC中,你没有页面类,所以你可以只发一个XHR到一个url(../controller/action/params,或其他),然后从动作中返回JSON。
<强>更新强>: 重新阅读您的问题后,听起来您想知道如何从客户端发出XHR。在原始的javascript中,你可以使用XMLHttpRequest对象,但是你使用的任何JS库都可能有一个更好的包装器。例如,jQuery是here