Javascript asp.net mvc Ajax未加载数据

Javascript asp.net mvc Ajax未加载数据,javascript,jquery,asp.net,ajax,asp.net-mvc,Javascript,Jquery,Asp.net,Ajax,Asp.net Mvc,我正在尝试使用ajax从控制器加载数据 控制器 [HttpGet] public ActionResult GetServices() { var data = _bbdb.ListServices.Where(d => d.Status == true).ToList(); return Json(data, JsonRequestBehavior.AllowGet); } 看法 服务可用性 $(文档).ready(函数(){ $.ajax({ url:'@url

我正在尝试使用ajax从控制器加载数据

控制器

[HttpGet]
public ActionResult GetServices()
{
    var data = _bbdb.ListServices.Where(d => d.Status == true).ToList();
    return Json(data, JsonRequestBehavior.AllowGet);
}
看法


服务可用性
$(文档).ready(函数(){ $.ajax({ url:'@url.Action(“Home/GetServices”), contentType:“应用程序/json;字符集=utf-8”, cache:false, 全球:错, async:false, 数据类型:“json”, 成功:功能(数据){ 警报(数据); $。每个(数据、函数(){ $(“
  • ”)html(“
  • ”+this.Title+“”+this.Description+”

  • )。附录(“#ListServices”); }); }, 错误:函数(错误){ 警报(错误); } }); });
    但是,它不显示来自控制器的数据,而是显示带有[object][object]的警报

    返回的数据应该是用于填充手风琴的值列表

    我错过了什么


    任何帮助都将不胜感激。

    现在您已经有了正确的URL(请参阅OP上的评论),让我们看看您的成功回调

    success: function (data) {
                alert(data);
                $.each(data, function () {
                   // your html creation here
                });
            },
    
    您需要将参数添加到
    $中。每个
    ,如下所示

    $.each(data, function(index, val){
        console.log(val.Title);
        console.log(val.Description);
    });
    
    请参阅以了解更多信息

    此外,当您将HTML附加到
    时,只需执行以下操作:


    $('#ListServices')。追加('
  • HTML的其余部分…
  • 将该错误回调函数更改为该函数,然后查看您得到的结果,这样我们就可以缩小问题范围:
    函数(xhr,status,err){console.log('Response code:'+xhr.status');console.log('error:'+err+']'+status);}
    它导致此错误响应代码:404[错误:未找到]错误HTTP响应404表示找不到您的url。仔细检查Javascript中呈现的url,然后仔细检查路由,确保一切正常。更新后,我将url从“@url.Action(“Home/GetServices”)”更改为url:“Home/GetServices”,现在它正在填充标题,但我的手风琴仍然无法工作(向下滑动)。好的,它从数据库返回一个值列表。安德鲁·彼得斯这里是服务的所有描述。@KleberBH那么一切都好吗?只需将生成的HTML中的
    this.Title
    this.Description
    等替换为
    val.Title
    ,等内容将填充右侧数据,但手风琴仍无法工作(单击时向下滑动以显示说明)。我认为这部分$(“
  • ”)html(“
  • ”+val.Title+“”+val.Description+”

  • ”)仍然存在问题@是的,很可能是这样。该代码生成一个
  • 元素,然后将该元素的HTML设置为包含一个
  • 。这就给您留下了嵌套的
  • 元素。请参阅我对答案的编辑
    $.each(data, function(index, val){
        console.log(val.Title);
        console.log(val.Description);
    });