Javascript 如何使用jqueryajax从mvc控制器获取列表以进行查看
我需要从mvc控制器获取一个列表,以便使用jQueryAjax查看。我该怎么做呢。这是我的密码。它的警报错误消息 内部控制器 试试这个: 视图:Javascript 如何使用jqueryajax从mvc控制器获取列表以进行查看,javascript,jquery,ajax,asp.net-mvc,jquery-ajaxq,Javascript,Jquery,Ajax,Asp.net Mvc,Jquery Ajaxq,我需要从mvc控制器获取一个列表,以便使用jQueryAjax查看。我该怎么做呢。这是我的密码。它的警报错误消息 内部控制器 试试这个: 视图: [System.Web.Mvc.HttpGet] public JsonResult getFoodDetails(int? userId) { IList<Food> FoodList = new List<Food>(); FoodList = FoodService
[System.Web.Mvc.HttpGet]
public JsonResult getFoodDetails(int? userId)
{
IList<Food> FoodList = new List<Food>();
FoodList = FoodService.getFoodDetails(userId);
return Json (new { Flist = FoodList } , JsonRequestBehavior.AllowGet);
}
或者,如果ajax请求产生了问题,那么您可以使用
$.getJSON
作为:
$.getJSON("Food/getFoodDetails", { userId: Id } , function( data ) {....});
为什么使用HttpPost作为GET方法?并需要返回JsonResult
public class FoodController : Controller
{
public JsonResult getFoodDetails(int userId)
{
IList<Food> FoodList = new List<Food>();
FoodList = FoodService.getFoodDetails(userId);
return Json (new{ FoodList = FoodList }, JsonRequestBehavior.AllowGet);
}
}
function GetFoodDetails() {
debugger;
$.ajax({
type: "GET",
url: "Food/getFoodDetails",
data: { userId: Id },
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
debugger;
alert(result)
},
error: function (response) {
debugger;
alert('eror');
}
});
}
公共类食品控制器:控制器
{
公共JsonResult getFoodDetails(int userId)
{
IList FoodList=新列表();
FoodList=FoodService.getFoodDetails(用户ID);
返回Json(新的{FoodList=FoodList},JsonRequestBehavior.AllowGet);
}
}
函数GetFoodDetails(){
调试器;
$.ajax({
键入:“获取”,
url:“食物/getFoodDetails”,
数据:{userId:Id},
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(结果){
调试器;
警报(结果)
},
错误:函数(响应){
调试器;
警报(“eror”);
}
});
}
您可以这样做,返回json数据并打印它
阅读完整教程:
public JsonResult BooksByPublisherId(int-id)
{
IEnumerable modelList=新列表();
使用(DAL.DevelopmentEntities上下文=新的DAL.DevelopmentEntities())
{
var books=context.books.Where(x=>x.PublisherId==id.ToList();
模型列表=书籍。选择(x=>
新图书模型()
{
Title=x.Title,
作者=x.作者,
年份=x.年,
价格=x.价格
});
}
返回Json(modelList,JsonRequestBehavior.AllowGet);
}
javascript
$.ajax({
cache: false,
type: "GET",
url: "@(Url.RouteUrl("BooksByPublisherId"))",
data: { "id": id },
success: function (data) {
var result = "";
booksDiv.html('');
$.each(data, function (id, book) {
result += '<b>Title : </b>' + book.Title + '<br/>' +
'<b> Author :</b>' + book.Author + '<br/>' +
'<b> Year :</b>' + book.Year + '<br/>' +
'<b> Price :</b>' + book.Price + '<hr/>';
});
booksDiv.html(result);
},
error: function (xhr, ajaxOptions, thrownError) {
alert('Failed to retrieve books.');
}
});
$.ajax({
cache:false,
键入:“获取”,
url:“@(url.RouteUrl(“BooksByPublisherId”)”,
数据:{“id”:id},
成功:功能(数据){
var结果=”;
booksDiv.html(“”);
$。每个(数据、函数(id、书本){
结果+='标题:'+book.Title+'
'+
'作者:'+book.Author+'
'+
“年份:”+图书年份+”
+
'价格:'+book.Price+'
';
});
booksDiv.html(结果);
},
错误:函数(xhr、ajaxOptions、thrownError){
警报('检索书籍失败');
}
});
我没有得到结果的原因是。。我忘了在库中添加json2.js
public class FoodController : Controller
{
[System.Web.Mvc.HttpGet]
public JsonResult getFoodDetails(int userId)
{
IList<Food> FoodList = new List<Food>();
FoodList = FoodService.getFoodDetails(userId);
return Json (FoodList, JsonRequestBehavior.AllowGet);
}
}
function GetFoodDetails() {
debugger;
$.ajax({
type: "GET",
url: "Food/getFoodDetails",
data: { userId: Id },
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
debugger;
alert(result)
},
error: function (response) {
debugger;
alert('eror');
}
});
}
公共类食品控制器:控制器
{
[System.Web.Mvc.HttpGet]
公共JsonResult getFoodDetails(int userId)
{
IList FoodList=新列表();
FoodList=FoodService.getFoodDetails(用户ID);
返回Json(FoodList,JsonRequestBehavior.AllowGet);
}
}
函数GetFoodDetails(){
调试器;
$.ajax({
键入:“获取”,
url:“食物/getFoodDetails”,
数据:{userId:Id},
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(结果){
调试器;
警报(结果)
},
错误:函数(响应){
调试器;
警报(“eror”);
}
});
}
$(文档).就绪(函数(){
var data=新数组();
$.ajax({
url:“列表”,
键入:“获取”,
数据:JSON.stringify(数据),
数据类型:“json”,
成功:功能(数据){
$。每个(数据、函数(索引){
//警报(“id=“+data[index].id+”name=“+data[index].name”);
$('#myTable tbody')。追加(“+data[index].id+”“+data[index].name+”);
});
},
错误:函数(msg){alert(msg);}
});
});
@控制器
公共班级学生控制员
{
@自动连线
学生服务学生服务;
@RequestMapping(value=“/list”,method=RequestMethod.GET)
@应答器
公共列表dispalyPage()
{
return studentService.getAllStudentList();
}
}
1-为用户的姓名创建一个模型
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Family { get; set; }
}
2-为NameOfGetUsers创建一个ActionResult
public ActionResult GetUsers()
{
List<User> users = new List<Models.User>()
{
new Models.User(){Id=1,Name="Diako",Family="Hasani"},
new Models.User(){Id=2,Name="Sina",Family="Moradi"},
new Models.User(){Id=3,Name="Hamid",Family="Chopani"}
};
return Json(users,JsonRequestBehavior.AllowGet);
}
4-将此代码写入script
<script>
$(document).ready(function () {
$.ajax({
type: "GET",
url: "/Home/GetUsers",
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
for (var i in result) {
$('#parent').append('<p>' + result[i].Name + '</p>');
}
},
error: function (response) {
alert('eror');
}
});
});
</script>
$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“/Home/GetUsers”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(结果){
for(结果中的var i){
$(“#父项”).append(“”+结果[i].Name+”');
}
},
错误:函数(响应){
警报(“eror”);
}
});
});
将方法返回类型更改为ActionResult,并将列表作为返回Json(新的{MyList=FodList},JsonRequestBehavior.AllowGet)返回代码>问题已解决…???很抱歉,它无法工作!!这是错误的一部分。只需查看更新的答案即可。@Aijuthomaskurian我是否需要更改RouteConfig中的任何内容?只需检查,因为在您的操作中。。。公共JsonResult getFoodDetails(int userId)…如果来自ajax的userId为null或空。。。然后它会产生问题,或者只是使用“?”和int,就像我在回答中使用的那样…@Aijuthomaskurian在返回部分之前,一切都很正常。我有一份清单,里面有一些数据。O
public class FoodController : Controller
{
[System.Web.Mvc.HttpGet]
public JsonResult getFoodDetails(int userId)
{
IList<Food> FoodList = new List<Food>();
FoodList = FoodService.getFoodDetails(userId);
return Json (FoodList, JsonRequestBehavior.AllowGet);
}
}
function GetFoodDetails() {
debugger;
$.ajax({
type: "GET",
url: "Food/getFoodDetails",
data: { userId: Id },
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
debugger;
alert(result)
},
error: function (response) {
debugger;
alert('eror');
}
});
}
$(document).ready(function () {
var data = new Array();
$.ajax({
url: "list",
type: "Get",
data: JSON.stringify(data),
dataType: 'json',
success: function (data) {
$.each(data, function (index) {
// alert("id= "+data[index].id+" name="+data[index].name);
$('#myTable tbody').append("<tr class='child'><td>" + data[index].id + "</td><td>" + data[index].name + "</td></tr>");
});
},
error: function (msg) { alert(msg); }
});
});
@Controller
public class StudentController
{
@Autowired
StudentService studentService;
@RequestMapping(value= "/list", method= RequestMethod.GET)
@ResponseBody
public List<Student> dispalyPage()
{
return studentService.getAllStudentList();
}
}
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Family { get; set; }
}
public ActionResult GetUsers()
{
List<User> users = new List<Models.User>()
{
new Models.User(){Id=1,Name="Diako",Family="Hasani"},
new Models.User(){Id=2,Name="Sina",Family="Moradi"},
new Models.User(){Id=3,Name="Hamid",Family="Chopani"}
};
return Json(users,JsonRequestBehavior.AllowGet);
}
<div id="parent"></div>
<script>
$(document).ready(function () {
$.ajax({
type: "GET",
url: "/Home/GetUsers",
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
for (var i in result) {
$('#parent').append('<p>' + result[i].Name + '</p>');
}
},
error: function (response) {
alert('eror');
}
});
});
</script>