Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery的函数对于me$.getJSON不正确_Jquery_Asp.net Mvc_Json - Fatal编程技术网

Jquery的函数对于me$.getJSON不正确

Jquery的函数对于me$.getJSON不正确,jquery,asp.net-mvc,json,Jquery,Asp.net Mvc,Json,我试图通过mvc中的JsonResult从服务器返回数据。然而,由于一些奇怪的原因,我无法拿起我的代码,代码会自动失败。客户端上的第一个警报成功,我确实看到了这里的输出,但第二个警报从未显示。为什么? //Server Side public JsonResult GetWeightsData() { PerfomanceMeasureDBDataContext db = new PerfomanceMeasureDBDataContext();

我试图通过mvc中的JsonResult从服务器返回数据。然而,由于一些奇怪的原因,我无法拿起我的代码,代码会自动失败。客户端上的第一个警报成功,我确实看到了这里的输出,但第二个警报从未显示。为什么?

    //Server Side
    public JsonResult GetWeightsData()
    {
          PerfomanceMeasureDBDataContext db = new PerfomanceMeasureDBDataContext();
          return this.Json(db.WeightMearsures.Select(x => new { Day =x.Date.ToString(),   Weight = x.Weight }));
    }


    //Client Side
    $(function () {
        $('#ShowChart').click(function () {
            alert("Got Here");
            $.getJSON("/Home/GetWeightsData", null, function (data) {
                alert(data[0].Day);
                var dates = new Array();
                var weights = new Array();
                for (var i = 0; i < data.length; i++) {
                    dates[i] = data[i].Day;
                    weights[i] = data[i].Weight;
                    alert(dates[i]);
                }
                showChart(dates, weights);
            });
        });
    });

您是否使用Firebug查看控制器方法的结果?linq表达式对我来说似乎很奇怪,对象拼写错误,但你确定你得到的是数据,而不仅仅是什么都没有回来吗?

你有没有使用Firebug来查看你的控制器方法的结果?linq表达式对我来说似乎很奇怪,对象拼写错误,但你确定你得到的是数据,而不仅仅是没有返回的内容吗?

添加.error函数以查看调用是否有问题


请参阅。

添加.error函数以查看调用是否有问题


请参阅。

默认情况下,MVC2+中的JsonResult会拒绝HTTP GET请求,因此您的代码也可能有问题。您是否尝试过直接从浏览器浏览/Home/GetWeightsData操作

尝试:

原因就在这里

默认情况下,MVC2+中的JsonResult会拒绝HTTP GET请求,因此您的代码也可能有问题。您是否尝试过直接从浏览器浏览/Home/GetWeightsData操作

尝试:

原因就在这里

我不确定,但在访问json时,您必须访问JsonRequestBehavior.AllowGet


我不确定,但在访问json时,您必须访问JsonRequestBehavior.AllowGet

请尝试$.ajax,而不是$.getJSON-添加错误处理程序

$.ajax({
  url: '/Home/GetWeightsData',
  type: 'post', // Use post, not get
  dataType: 'json',
  success:function(){
      alert(data[0].Day);
      var dates = new Array();
      var weights = new Array();
      for (var i = 0; i < data.length; i++) {
          dates[i] = data[i].Day;
          weights[i] = data[i].Weight;
          alert(dates[i]);
      }
      showChart(dates, weights);
  },
  error:function(jqXHR, textStatus, errorThrown){
      alert(errorThrown);
  }
});
请尝试$.ajax,而不是$.getJSON-添加错误处理程序

$.ajax({
  url: '/Home/GetWeightsData',
  type: 'post', // Use post, not get
  dataType: 'json',
  success:function(){
      alert(data[0].Day);
      var dates = new Array();
      var weights = new Array();
      for (var i = 0; i < data.length; i++) {
          dates[i] = data[i].Day;
          weights[i] = data[i].Weight;
          alert(dates[i]);
      }
      showChart(dates, weights);
  },
  error:function(jqXHR, textStatus, errorThrown){
      alert(errorThrown);
  }
});

在成功回调中放置一个警报并查看它是否显示在成功回调中放置一个警报并查看它是否显示Hanks added JsonRequestBehavior.AllowGet,这是fix=DThanks added JsonRequestBehavior.AllowGet,这是fix=D
$.ajax({
  url: '/Home/GetWeightsData',
  type: 'post', // Use post, not get
  dataType: 'json',
  success:function(){
      alert(data[0].Day);
      var dates = new Array();
      var weights = new Array();
      for (var i = 0; i < data.length; i++) {
          dates[i] = data[i].Day;
          weights[i] = data[i].Weight;
          alert(dates[i]);
      }
      showChart(dates, weights);
  },
  error:function(jqXHR, textStatus, errorThrown){
      alert(errorThrown);
  }
});