jqPlot不使用日期

时间:2014-09-09 20:35:27

标签: c# jquery asp.net-mvc json jqplot

我刚开始使用JSON,我正在尝试生成一个jqPlot,其中包含 x -axis上的日期和 y -axis上的数字。为此,我将数据作为JSON字符串传递给我的视图。但是,没有生成jqPlot。

以下是我在视图中的代码:

<script type="text/javascript">
    $(document).ready(function () {
        var plot = $.jqplot('placeholder', @ViewBag.Chart, {
            title: 'Visual Report',
            axes: {
                xaxis: { renderer: $.jqplot.DateAxisRenderer }
            }
        });
    });
</script>

我正在使用Newtonsoft.json.JsonTextWriter来创建JSON字符串;可以与此有关吗?

    private string json(Dictionary<string, Dictionary<string, List<Point>>> points, string radio)
    {
        var sb = new StringBuilder();
        var sw = new StringWriter();
        using (var jsonWriter = new JsonTextWriter(sw)) 
        {
            jsonWriter.WriteStartArray();
            foreach (var merchant in points)
            {
                foreach (var type in merchant.Value)
                {
                    jsonWriter.WriteStartArray();
                    foreach (var point in type.Value)
                    {
                        jsonWriter.WriteStartArray();
                        jsonWriter.WriteValue(point.Date.Value.ToString("yyyy-MM-dd"));
                        if (radio == "Amount")
                        {
                            jsonWriter.WriteValue(point.SumAmount);
                        }
                        else
                        {
                            jsonWriter.WriteValue(point.CountAmount);
                        }
                        jsonWriter.WriteEndArray();
                    }
                    jsonWriter.WriteEndArray();
                }
            }
            jsonWriter.WriteEndArray();
        }
        string result = sw.ToString();
        return result;
    }

当我更换线

jsonWriter.WriteValue(point.Date.Value.ToString("yyyy-MM-dd"));

jsonWriter.WriteValue(point.SumAmount);

图表神奇地出现(在我注释掉轴选项之后)。似乎问题源于JSON字符串中日期的解析,但在我尝试使用jQuery.parseJSON()JSON.parse()后仍然无效。我在这里做错了什么?

更新:虽然我无法解决这个问题,但我设法通过Ajax(或多或少)实现了我想要做的事情(事实证明它有自己的学习曲线,但是这是另一天的故事。)

0 个答案:

没有答案