我在 javascript 文件中有一个 var toto。我想调用一个 C# 控制器方法,它返回一个字符串,当然将结果字符串分配给 toto。
我尝试了一些方法来实现这一点,但似乎没有任何效果。
有人可以向我解释实现这一目标的最简单方法吗?这是一个 Windows Azure 项目。
非常感谢 !
我在 javascript 文件中有一个 var toto。我想调用一个 C# 控制器方法,它返回一个字符串,当然将结果字符串分配给 toto。
我尝试了一些方法来实现这一点,但似乎没有任何效果。
有人可以向我解释实现这一目标的最简单方法吗?这是一个 Windows Azure 项目。
非常感谢 !
你可以使用 AJAX。例如,使用 jQuery,您可以使用该$.getJSON
方法向控制器操作发送 AJAX 请求,该操作返回 JSON 编码结果,并在成功回调中使用结果:
$.getJSON('/home/someaction', function(result) {
var toto = result.SomeValue;
alert(toto);
});
和控制器动作:
public ActionResult SomeAction()
{
return Json(new { SomeValue = "foo bar" }, JsonRequestBehavior.AllowGet);
}
您必须使用 JSON:
控制器
public class PersonController : Controller
{
[HttpPost]
public JsonResult Create(Person person)
{
return Json(person); //dummy example, just serialize back the received Person object
}
}
Javascript
$.ajax({
type: "POST",
url: "/person/create",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: jsonData,
success: function (result){
console.log(result); //log to the console to see whether it worked
},
error: function (error){
alert("There was an error posting the data to the server: " + error.responseText);
}
});
阅读更多:http ://blog.js-development.com/2011/08/posting-json-data-to-aspnet-mvc-3-web.html#ixzz1wKwNnT34