0

从我的 jQuery 文件中,我从控制器调用一个函数,该函数返回一个 Json 对象,如下所示:

[AcceptVerbs(HttpVerbs.Get)]
        public ActionResult MatrixTypes()
        {

            var matrix = Enum.PricingMatrixType();

            return Json(matrix);

        }

调用是由以下函数进行的,我只发布一个真正重要的摘录:

 var matrix;

                                            $.get(
                                            MatrixTypeUrl, 
                                            function(data) {
                                                matrix = JSON.parse(data);
                                                for (var i = 0; i < matrix.length; i++) {
                                                    html += String.format('<option value="{0}">{1}</option>', matrix[i].Value, matrix[i].Text);
                                                }

当我按下页面上的按钮时,此函数会被正确调用,但会在“matrix = JSON.parse(data);”这一行爆炸

数据对象有数据,我通过调试在调用时仔细检查了它。

这是我得到的错误:

JSON.parse [打破这个错误] matrix = JSON.parse(data);

你觉得我能对此做些什么?

编辑:通过使用 Firebug,我还可以确认 JSON 对象不为空,这是服务器的响应:

[{"Text":"Valor Único","Value":"0"},{"Text":"Intervalo","Value":"1"},{"Text":"Valor Adicional","Value":"2"}]
4

1 回答 1

1

没关系这个问题,我解决了。它在 jQuery 类的初始化程序中缺少一些调用,因此在到达 JSON.parse(data) 调用之前就出现了错误。

于 2010-08-06T11:05:02.627 回答