Javascript 分配来自MVC4控制器操作的json值的有效方法是什么
在视图中的某个地方,我需要从返回json对象的操作中指定值,我希望如下所示:Javascript 分配来自MVC4控制器操作的json值的有效方法是什么,javascript,controller,action,Javascript,Controller,Action,在视图中的某个地方,我需要从返回json对象的操作中指定值,我希望如下所示: <script type="text/javascript"> var jsonFromAction = @Html.Action("GetMenuJson", "Test"); </script> var jsonFromAction=@Html.Action(“GetMenuJson”,“Te
<script type="text/javascript">
var jsonFromAction = @Html.Action("GetMenuJson", "Test");
</script>
var jsonFromAction=@Html.Action(“GetMenuJson”,“Test”);
我的控制器操作代码如下:
public ActionResult GetMenuJson(int? subCategoryId)
{
_lCatService = new LeftCategoryService();
List<FlatObject> flatObjects = _lCatService.GetCategory(UIUtility.Uitlity.CurrentLanguageCode);
return Json(GetList(flatObjects, 0), JsonRequestBehavior.AllowGet);
}
公共操作结果GetMenuJson(int?子类别ID)
{
_lCatService=新的LeftCategoryService();
List flatObjects=_lCatService.GetCategory(UIUtility.uility.CurrentLanguageCode);
返回Json(GetList(flatObjects,0),JsonRequestBehavior.AllowGet);
}
进行ajax调用:
$.ajax({
type: "Get",
url: 'GetMenuJson',
data: "Test",
success: function (result) {
var jsonFromAction = result;
}
});
您的api的返回类型应该是
Json
(JsonResult
),这样它就可以返回Json
,让它成为JsonResult,ActionResult不会工作。感谢Ashok的快速响应。这对我很有帮助。但是我的要求有点不同,我不想在页面加载后调用任何ajax,我只想在任何操作结果上用预定义的json对象注册一些java脚本变量..我得到了另一种方法,通过从controller方法返回JavaScript操作结果。