2012-04-23 96 views
0

我想说明,从控制器返回,在功能的onComplete数据:ASP.NET MVC显示从查看页面中的控制器返回的数据?

function onComplete() { 
    alert(); //I want to show data that returned from controller in this. 
} 

这里是AJAX链接:

@Ajax.ActionLink("Upvote", "Upvote", "Author", 
new AjaxOptions 
{ 
    InsertionMode = InsertionMode.Replace, 
    UpdateTargetId = "vote_count", 
    OnComplete = "onComplete", 
}) 

而且我的控制器:

public ActionResult Upvote(Guid QuestionID) 
{ 
    return Content("Message"); 
} 

感谢。

回答

1
function onComplete(result) { 
    alert(result.responseText); 
} 

或者,如果您使用OnSuccess回调:

@Ajax.ActionLink("Upvote", "Upvote", "Author", 
new AjaxOptions 
{ 
    InsertionMode = InsertionMode.Replace, 
    UpdateTargetId = "vote_count", 
    OnSuccess = "onSuccess", 
}) 

你可以:

function onSuccess(result) { 
    alert(result); 
} 

例如,如果你的控制器动作返回一个JSON结果:

return Json(new { foo = "bar" }, JsonRequestBehavior.AllowGet); 

在你的成功回调你已经得到的JavaScript解析的对象:

function onSuccess(result) { 
    alert(result.foo); 
} 

注意,这是不符合OnComplete回调,你总能得到XHR对象作为参数的情况下,这是给你做解析等。还要注意,OnComlpete回调总是执行,即使AJAX调用失败,OnSuccess回调显然不是这种情况。

相关问题