任何人都可以帮忙吗?ASP.NET MVC:通过ajax从页面再次进入控制器?
我刚开始asp.net的MVC和它的所有工作..进入我的控制器,然后发送出去的观点......我也写在这里的日志....
的加载页面作为相当多的jQuery和JavaScript,所以我需要能够再次进入控制器,最好不是回发,但通过ajax或类似的 - 这可能吗?
或者我从JavaScript调用一个控制器的动作,我想我的问题应该是 - ???
任何想法?
在此先感谢
任何人都可以帮忙吗?ASP.NET MVC:通过ajax从页面再次进入控制器?
我刚开始asp.net的MVC和它的所有工作..进入我的控制器,然后发送出去的观点......我也写在这里的日志....
的加载页面作为相当多的jQuery和JavaScript,所以我需要能够再次进入控制器,最好不是回发,但通过ajax或类似的 - 这可能吗?
或者我从JavaScript调用一个控制器的动作,我想我的问题应该是 - ???
任何想法?
在此先感谢
那么,如果你想要做的阿贾克斯对一个控制器,你可以做与jQuery像这样的阿贾克斯:
$.ajax({
type: "GET",//type of verb to use POST/GET
data: ({ Data:data }),//Send some data to the controller
url: '<% = Url.Action("MEthod","Controller")%>',//URL of the resource
dataType: "text/html", //Define the type of spectated results(JSON,Html,Xml)
timeout: 8000, //How much time to wait for the asynchronous call to complete
error: function() {
alert('ERROR');
}, //end error
success: function(html) {
//Here do something with the result hold in the html variable
} //end succes
}); //end ajax
对于您可以访问jQuery文档http://docs.jquery.com/Ajax
您在正确的轨道上。
MVC的路由功能使得再次“输入控制器”变得非常简单。只需使用jQuery ajax方法进行POST或GET请求即可。
我会发布一些代码,但我不知道你想做什么。
对于初学者,您将Ajax帮助器作为MVC框架的一部分,它具有各种MVC ajax任务的帮助器,请检查它们。否则,控制器和操作都是正常的可请求的URL,无论您选择的是哪种Ajax工具。
有点像一个完整的参考使用jQuery如下:
$.post('/ControllerName/ActionName', {}, function(result) {
// handle result here...
});
你绝对可以这样做只是通过使另一GET或POST到控制器/动作要调用。在该操作中,您可以使用扩展方法Request.IsAjaxRequest();
确定请求是否来自Ajax。这将允许您的操作对AJAX请求的响应与通常情况不同。
例如,我有一个TwitterController,它在首页上读取我的twitter RSS源。在我的操作中,我执行以下操作:
public ActionResult Feed(string id)
{
if (Request.IsAjaxRequest())
{
// return some pretty Json of my tweets
return Json(GetMyFeeds(id));
}
else
{
// I don't want to respond to Non-AJAX requests.
return RedirectToAction("Index", "Home");
}
}
您可以使用JQuery或内置的ASP.NET Ajax库轻松做到这一点。它允许你从控制器返回数据,或者你可以使用部分视图。