在您的视图中,您可以testAction
通过 Ajax 调用调用您的方法,然后访问您返回的对象。但据我所知,你必须返回一个模型。
创建模型
public class YourModel
{
public string Name { get; set; }
public int Age { get; set; }
}
控制器:
public ActionResult testAction(string name, int age)
{
YourModel ym = new YourModel();
ym.Name = name;
ym.Age = age;
return Json(ym, JsonRequestBehavior.AllowGet);
}
您的看法:
var name = "Mike";
var age = "20";
$.ajax({
url : "@Url.Action("testAction", "YourController")",
contentType : "application/json; charset=utf-8",
dataType : "json",
type : "POST",
data : JSON.stringify({name: name, age: age})
}).done(function (data) {
alert(data); // Do what you want with your object, like data.Name
})
这是一个虚拟示例,因为您将参数从视图传递到控制器,然后将它们发送回视图,但我认为此示例可以帮助您更好地了解如何在 ASP.NET MVC3 中使用 Ajax 调用。Ajax 调用是异步的,但是感谢deferred .done
,您等待服务器调用结束以确保您的data
对象被填充